我在MacOS上运行npm install -g angular-cli
时出现此错误:
npm ERR! node v6.9.2
npm ERR! npm v3.10.9
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/local/lib/node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/apple/npm-debug.log
答案 0 :(得分:9)
在任何平台上使用npm install -g
并获得EACCES
时,您正在写入您没有写入权限的目录。
有些人可能会建议使用sudo
,但这将导致将来出现更多问题。 npm documentation提供了解决此问题的步骤。
我强烈推荐选项3,使用Homebrew安装Node。
答案 1 :(得分:3)
我解决了那个
playerWhite
为我工作
答案 2 :(得分:3)
创建用于全局安装的目录:
mkdir ~/.npm-global
配置npm以使用新的目录路径:
npm config set prefix '~/.npm-global'
创建一个〜/ .profile文件并添加以下行:
export PATH=~/.npm-global/bin:$PATH
更新系统变量:
source ~/.profile
参考:caniuse
答案 3 :(得分:1)
尝试使用此方法: 在命令行的主目录中,创建用于全局安装的目录:
mkdir ~/.npm-global
配置npm以使用新的目录路径:
npm config set prefix '~/.npm-global'
在您喜欢的文本编辑器中,打开或创建〜/ .profile文件并添加以下行:
export PATH=~/.npm-global/bin:$PATH
在命令行上,更新系统变量:
source ~/.profile
不使用sudo全局测试安装软件包。
现在运行npm install -g angular-cli
即可。
答案 4 :(得分:1)
对我来说这是一个很好的链接。
https://flaviocopes.com/npm-fix-missing-write-access-error/
一旦我执行了此命令
# download data
download.file("https://www.elections.il.gov/ElectionInformation/CandDataFile.aspx?id=51", dest = "candidates.txt")
# load data
gm = read.table("candidates.txt", header = T, stringsAsFactors = F, skipNul = F)
在我的终端中,有角度的CLI安装效果很好!
答案 5 :(得分:0)
我通过运行解决了该问题
sudo npm install -g @ angular / cli
提示输入密码后,输入密码。
然后您就可以安装。
答案 6 :(得分:0)
Ayush的回答是我最初尝试的。但是问题仍然存在。不确定我可能没有正确执行所有步骤。因此,我再次查询了Google,并找到了此链接https://github.com/angular/angular-cli/issues/7735#issuecomment-345546822。有两种解决方法。幸运的是,第一种方法对我有用。可能有所不同的步骤可以与答案中上面提到的Ayush进行比较:
$ echo -e "export PATH=$(npm prefix -g)/bin:$PATH" >> ~/.bashrc
$ source ~/.bashrc
虽然我正在使用Ubuntu!无论如何,现在解决了。 :)
答案 7 :(得分:0)
我在 Linux 上遇到了这个问题,其中存储库位于使用选项 noexec
挂载的分区上。使用 exec
重新挂载分区为我解决了问题。
我已经通过 nvm 安装了 node,这是避免权限问题的推荐方法。但是如果nvm不能在你的文件夹中执行,在某些情况下它就不起作用了。
答案 8 :(得分:-1)
您好请按照我的指南从cli安装angular 4,不得有任何权限问题:
全局安装angular-cli
sudo npm install -g @angular/cli
创建一个新项目
ng new my-app --skip-install
提供申请
sudo chown <username> -R my-app
cd my-app
mkdir node_modules
chmod a+w node_modules
npm install
ng serve --open
答案 9 :(得分:-1)
为centos用户运行此命令:
@CsvBindByName(column = "username")
private String userName;
@CsvBindByName(column = "password")
private String userPassword;
@CsvBindByName(column = "rememberPassword")
private boolean rememberPassword;
@CsvBindByName(column = "rememberUser")
private boolean rememberUser;
@CsvCustomBindByName(column = "scores", converter = UserScoreToBean.class)
private UserScore userScore;
// Constructors, getters, setters, and other methods
对我有用!
答案 10 :(得分:-1)
重要说明:我的回答有漏洞问题。以root身份授予权限。仅在分析对系统的影响后使用。
使用后
sudo npm install -g软件包名称--unsafe-perm = true --allow-root
在使用CLI创建项目时,我仍然遇到问题。 这些允许权限的命令已对其进行了修复:
sudo chown -R $ USER:$ GROUP〜/ .npm
sudo chown -R $ USER:$ GROUP〜/ .config