Npm在AngularJS phonecat应用程序中启动问题

我下载了AngularJS phonecat应用程序,并在全球范围内安装了bower,http-server,karma,量angular器。 但是当我移动到代码目录并尝试“npm start”时,它运行“npm install”并显示以下错误:

angular-phonecat@0.0.0 prestart / Users / twer / angular-phonecat

npm安装

npm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock'npm WARNlocking在错误(本机)npm警告locking/Users/twer/.npm/_locks/bower-d21e2b2886728075。锁失败{[Error:EACCES,打开'/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock'] npm WARN锁errno:-13,npm WARN锁代码:'EACCES',npm WARNlockingpath:' /Users/twer/.npm/_locks/bower-d21e2b2886728075.lock'} npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁/ Users / twer / angular-phonecat / node_modules / bower,但未lockingnpm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock'npm警告locking错误(本地)npm警告locking/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock失败{[错误:EACCES,打开'/Users/twer/.npm/_locks/http-server- 0dbc63e1ce281434.lock'] npm WARNlockingerrno:-13,npm WARNlocking代码:'EACCES',npm WARNlockingpath:'/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock'} npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁/ Users / twer / angular-phonecat / node_modules / http-server,但未lockingnpm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock'npm WARNlocking错误(本地)npm WARNlocking/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock失败{[错误:EACCES,打开'/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock' ] npm WARNlockingerrno:-13,npm WARNlocking代码:'EACCES',npm WARNlockingpath:'/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock'} npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁/ Users / twer / angular-phonecat / node_modules / shelljs,但未lockingnpm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock'npm WARNlocking错误(本地)npm警告locking/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock失败{[错误:EACCES,打开'/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock'] npm WARN锁errno:-13,npm WARN锁代码:'EACCES',npm WARNlockingpath:'/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock'} npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁/ Users / twer / angular-phonecat / node_modules / karma,但尚未lockingnpm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock'npm WARNlocking错误(本地)npm警告locking/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock失败{[错误:EACCES,打开'/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock'] npm WARNlockingerrno:-13,npm WARNlocking代码:'EACCES',npm WARNlockingpath:'/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock'} npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁/ Users / twer / angular-phonecat / node_modules /量angular器,但未lockingnpm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock 'npm警告locking在错误(本地)npm警告locking/Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock失败{[错误:EACCES,打开'/Users/twer/.npm/_locks/ karma-chrome-launcher-4c47483197e76b06.lock'] npm WARNlockingerrno:-13,npm WARNlocking代码:'EACCES',npm WARNlockingpath:'/Users/twer/.npm/_locks/karma-chrome-launcher- 4c47483197e76b06.lock'} npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁/ Users / twer / angular-phonecat / node_modules / karma-chrome-launcher,但未lockingnpm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427 .lock'npm WARNlocking错误(本机)npm WARNlocking/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock失败{[错误:EACCES,打开'/Users/twer/.npm/_locks/ karma-jasmine-435fcdaa8b86b427.lock'] npm WARNlockingerrno:-13,npm WARNlocking代码:'EACCES',npm WARNlockingpath:'/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock' } npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁/ Users / twer / angular-phonecat / node_modules / karma-jasmine,但未lockingnpm WARNlocking错误:EACCES,打开'/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock'npm WARNlocking
错误(本地)npm警告locking/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock失败{[错误:EACCES,打开'/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock'] npm WARNlockingerrno:-13,npm WARNlocking代码:'EACCES',npm WARNlockingpath:'/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock'} npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“install”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4

npm ERR! 尝试解锁尚未locking的/ Users / twer / angular-phonecat / node_modules / tmp

npm ERR! 达尔文13.4.0 npm错误! argv“node”“/ usr / local / bin / npm”“start”npm ERR! 节点v0.12.2 npm ERR! npm v2.7.4 npm ERR! 代码ELIFECYCLE npm ERR! angular-phonecat@0.0.0 prestart: npm install npm ERR! 退出状态1 npm ERR! npm ERR! 在angular-phonecat@0.0.0预启动脚本“npm install”失败。 npm ERR! 这很可能是angular-phonecat包的问题,​​npm ERR! 而不是npm本身。 npm ERR! 告诉作者,这在你的系统上失败:npm ERR! npm安装npm ERR! 您可以通过以下方式获取他们的信息:npm ERR! npm所有者ls angular-phonecat npm ERR! 上面可能还有其他的日志输出。

npm ERR! 请包括以下文件与任何支持请求:npm ERR! /Users/twer/angular-phonecat/npm-debug.log

我该如何解决? 提前致谢。

这些错误意味着npm由于权限错误而无法访问目录/Users/twer及其子目录。

你想用自己的用户权限来运行npm ,所以通过改变所有权来设置它们

 chown -R $USER <directory> 

要么

 chown -R `whoami` <directory> 

– 两个命令都是一样的,其中<directory>是:

  • 你的主目录( /Users/twer )用于本地安装;
  • 你的非系统软件包的机器目录/usr/local或者任何top目录是npm试图使用的,你在错误信息中看到的情况下,你可能需要在你的命令前加上sudo

这里的选项-Rrecursion的,因为它将正确的所有权也设置到所有的子目录,这正是你想要的。

你想避免sudo一样运行npm ,正如npm创build者Isaac Schlueter所推荐的那样 :

我强烈build议你不要用sudo做包pipe理! 软件包可以运行任意脚本,这使得一个包pipe理器命令可以像链锯理发一样安全。 当然,这个速度很快,肯定会克服任何障碍,但是实际上你可能希望这个障碍留在那里。