博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决Mac下npm权限问题
阅读量:4952 次
发布时间:2019-06-12

本文共 1334 字,大约阅读时间需要 4 分钟。

前言

  在学习Vue-CLI3的时候使用了全局安装,提示安装失败,本以为是npm版本问题,在更新npm的过程中又出现了 npm ERR! code: 'EACCES' ,查了一下发现是权限问题。

  看到权限不足第一反应就是使用 sudo,  sudo 确实能解决一些权限问题,但却不是最好的解决方案。

正文

  官方给出两种方法 :

  使用node版本管理器重新下载npm(Reinstall npm with a node version manager)

或者

  手动修改npm的默认目录(Manually change npm’s default directory)

------------------------------------分割线------------------------------------

  先说第一种方法,我这里是用的是 nvm。

安装命令:

 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash 

or Wget:

 wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash 

 

  安装好会提示重新启动终端,重启之后输入  nvm --version  , 显示版本号则说明安装成功。

  如果显示  command not found: nvm  可能是nvm没安装好,还有可能是缺少 .bash_profile 文件。

 

  在home目录创建 .bash_profile 文件 (cd ~  , touch .bash_profile),写入

export NVM_DIR="${XDG_CONFIG_HOME/:-$HOME/.}nvm"[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

保存以后重新运行安装命令,安装后重启终端即可。 我运行  npm install -g @vue/cli  可以下载了。

  第二种方法,手动修改npm的默认目录(具有读写权限的目录),如下

  1.创建全局目录

mkdir ~/.npm-global

  2.配置npm使用新路径

npm config set prefix '~/.npm-global'

  3.打开或创建一个~/.profile文件并添加以下代码

export PATH=~/.npm-global/bin:$PATH

  4.在命令行上,更新系统变量

source ~/.profile

  5.测试新配置,不用sudo全局下载安装包

npm install -g jshint

不想使用 2-4,还可以使用相应的环境变量(例如,你不想修改~/.profile)来实现

NPM_CONFIG_PREFIX=~/.npm-global

 

参考资料:

 

以上。

转载于:https://www.cnblogs.com/bfc0517/p/10186882.html

你可能感兴趣的文章
ActivityManager与Proxy模式的运用
查看>>
S2SH 商城系统(4)——Application 缓存功能实现
查看>>
焦点轮播图
查看>>
午后随想
查看>>
iOS开发UI篇—简单的浏览器查看程序
查看>>
观察者设计模式
查看>>
Android 用户界面---状态栏通知(三)
查看>>
Android类参考---Looper
查看>>
TCP拥塞控制算法 — CUBIC的补丁(一)
查看>>
iOS开源加密相册Agony的实现(二)
查看>>
linux内核空间和用户空间详解
查看>>
PHP中SimpleXMLElement对象字符编码
查看>>
python-集合
查看>>
C# 扩展方法
查看>>
Java 内部类
查看>>
Win32 模版程序
查看>>
除非Microsoft FTP 服务(FTPSVC)正在运行,否则无法启动FTP站点。服务目前已停止...
查看>>
java基本数据类型
查看>>
T-SQL查询——事务的ACID
查看>>
kinect学习笔记(一)—— Openni平台的搭建~、
查看>>