Angular CLI安装错误

时间:2017-02-04 15:49:51

标签: angular-cli npm-install

我在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

11 个答案:

答案 0 :(得分:9)

在任何平台上使用npm install -g并获得EACCES时,您正在写入您没有写入权限的目录。

有些人可能会建议使用sudo,但这将导致将来出现更多问题。 npm documentation提供了解决此问题的步骤。

我强烈推荐选项3,使用Homebrew安装Node。

答案 1 :(得分:3)

我解决了那个

playerWhite

为我工作

答案 2 :(得分:3)

  1. 创建用于全局安装的目录:

    mkdir ~/.npm-global

  2. 配置npm以使用新的目录路径:

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

  3. 创建一个〜/ .profile文件并添加以下行:

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

  4. 更新系统变量:

    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