这可能是非常微不足道的,但是当我尝试安装angular-cli时,我正撞到墙上。
我正在关注官方angular-cli documentation here.
mkotsollariss-MacBook-Pro:~ mkotsollaris$ npm -v
5.6.0
mkotsollariss-MacBook-Pro:~ mkotsollaris$ node -v
v8.9.4
然后我运行npm install -g angular-cli,它给了我:
mkotsollariss-MacBook-Pro:~ mkotsollaris$ npm install -g angular-cli
npm WARN deprecated angular-cli@1.0.0-beta.28.3: angular-cli has been renamed to @angular/cli. Please update your dependencies.
npm WARN deprecated gulp-util@3.0.7: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN @angular/core@2.4.10 requires a peer of rxjs@^5.0.1 but none is installed. You must install peer dependencies yourself.
npm ERR! path /Users/mkotsollaris/.npm-packages/lib/node_modules/.staging/@angular
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall rmdir
npm ERR! Error: EACCES: permission denied, rmdir '/Users/mkotsollaris/.npm-packages/lib/node_modules/.staging/@angular'
npm ERR! { Error: EACCES: permission denied, rmdir '/Users/mkotsollaris/.npm-packages/lib/node_modules/.staging/@angular'
npm ERR! stack: 'Error: EACCES: permission denied, rmdir \'/Users/mkotsollaris/.npm-packages/lib/node_modules/.staging/@angular\'',
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'rmdir',
npm ERR! path: '/Users/mkotsollaris/.npm-packages/lib/node_modules/.staging/@angular' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/mkotsollaris/.npm/_logs/2018-01-14T23_11_22_610Z-debug.log
mkotsollariss-MacBook-Pro:~ mkotsollaris$ ng
-bash: ng: command not found
我想我几乎尝试过网络上的所有内容,但仍无法使其发挥作用。
我的操作系统是MacOS High Sierra 10.13.2
。
知道我在这里缺少什么吗?
答案 0 :(得分:21)
经过多次尝试,我终于通过nvm成功安装了angular-cli
。详细说明:
安装nvm:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
export NVM_DIR="/Users/mkotsollaris/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
nvm --version
0.33.0
然后通过nvm
安装节点:
nvm install stable
nvm install node
此后,安装angular-cli:
npm install -g @angular/cli
mkotsolarissMBP:myapp mkotsollaris$ ng -v
_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ △ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/
Angular CLI: 1.6.5
Node: 9.4.0
OS: darwin x64
Angular: 5.2.1
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router
@angular/cli: 1.6.5
@angular-devkit/build-optimizer: 0.0.41
@angular-devkit/core: 0.0.28
@angular-devkit/schematics: 0.0.51
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.9.5
@schematics/angular: 0.1.16
typescript: 2.5.3
webpack: 3.10.0
mkotsolarissMBP:myapp mkotsollaris$
验证ng是否正常工作:
ng new my-project
cd my-project
ng serve
该应用将从localhost:4200
开始。
答案 1 :(得分:8)
在Mac Mojave上安装angular-cli时,我遇到了类似的问题。
正确的安装步骤是:
/usr/local/lib/node_modules/
的目录所有者设置为root。 执行以下命令,将所有者设置为您的用户:
sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
npm install -g @angular/cli
(避免使用sudo)
答案 2 :(得分:2)
尝试一下:
sudo npm install -g @angular/cli
答案 3 :(得分:1)
要摆脱访问错误,这些步骤可以帮助您:
第一步: 自制安装[https://brew.sh/] :(在终端上)
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
第2步: brew安装节点
Check version: node -v, npm -v
Step3: brew install -g angular-cli
Check version: ng --version
Step4: ng新的First-App
答案 4 :(得分:1)
这些是我使用的代码
sudo npm uninstall -g angular-cli
sudo npm uninstall -g @angular/cli
sudo npm cache clean --force
npm install -g @angular/cli
alias ng="~/node_modules/@angular/cli/bin/ng"
支票
ng --version
答案 5 :(得分:0)
我之前遇到的问题非常类似于此问题。 您最有可能安装了Node& NPM作为root等。
您应该尝试重新安装Node&没有sudo
的NPM,其中一个脚本可能适合您:https://gist.github.com/isaacs/579814
然后重试npm i -g angular-cli
,希望不会有任何问题。
祝你好运!
答案 6 :(得分:0)
安装角度cli的步骤。
请记住,-g表示全局作用域,因此程序包将安装在根目录文件夹中。因此,该命令应以“ sudo ”
开头答案 7 :(得分:0)
来回后我用自制的。赶紧跑: “ sudo brew安装angular-cli” 如果您安装了自制软件,它可以解决我所有的问题,包括在angular 7上的node-sass问题。
答案 8 :(得分:0)
这对我有用。
sudo npm install --unsafe-perm -g @angular/cli
答案 9 :(得分:0)
这似乎是您的节点/ npm的问题,而不是Angular CLI的问题。
请查看固定的npm权限页面,常见错误页面,npm问题跟踪器,或者如果未知您遇到的问题,请打开一个新问题。
答案 10 :(得分:0)
Error: EACCES: permission denied, rmdir '/Users/mkotsollaris/.npm-packages/lib/node_modules/.staging/@angular'
you do not have permissions to access the directories node_modules.
您的进程要更改目录,因此不允许访问 您可以轻松地以超级用户(admin)身份获得具有访问权限的命令,以便进程可以修改node_modules的角度。
sudo npm install -g @angular/cli
答案 11 :(得分:0)
在我的Mac环境中
sudo chown -R $ USER / usr / local / lib / node_modules
运行此命令即可解决问题,只需运行npm命令
答案 12 :(得分:0)
请参阅有关如何解决此问题的文档:Resolving EACCES permissions errors when installing packages globally
也就是说,当我运行它时它对我有用:
BH_Equipment