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

时间:2015-04-12 05:00:22

标签: angularjs node.js

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

  
    

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

         
      

npm install

    
  
     

npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/bower-d21e2b2886728075.lock' npm WARN锁定   在错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/bower-d21e2b2886728075.lock failed {[错误:   EACCES,open' /Users/twer/.npm/_locks/bower-d21e2b2886728075.lock']   npm WARN锁定错误:-13,npm WARN锁定代码:' EACCES',npm   WARN锁定路径:   ' /Users/twer/.npm/_locks/bower-d21e2b2886728075.lock' } npm ERR!   达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM" "安装" NPM   呃!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / bower,还没有   锁定npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock'警告   锁定错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock failed {   [错误:EACCES,打开   ' /Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock'] npm WARN   锁定errno:-13,npm WARN锁定代码:' EACCES',npm WARN   锁定路径:   ' /Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock' } npm ERR!   达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM" "安装" NPM   呃!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / http-server,它没有   被锁定npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock'警告   锁定错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock failed {[错误:   EACCES,open' /Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock']   npm WARN锁定错误:-13,npm WARN锁定代码:' EACCES',npm   WARN锁定路径:   ' /Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock' } npm ERR!   达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM" "安装" NPM   呃!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / shelljs,还没有   锁定npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/karma-e8390a258c010e78.lock' npm WARN锁定   在错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/karma-e8390a258c010e78.lock failed {[错误:   EACCES,open' /Users/twer/.npm/_locks/karma-e8390a258c010e78.lock']   npm WARN锁定错误:-13,npm WARN锁定代码:' EACCES',npm   WARN锁定路径:   ' /Users/twer/.npm/_locks/karma-e8390a258c010e78.lock' } npm ERR!   达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM" "安装" NPM   呃!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / karma,还没有   锁定npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock'警告   锁定错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock failed {   [错误:EACCES,打开   ' /Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock'] npm WARN   锁定errno:-13,npm WARN锁定代码:' EACCES',npm WARN   锁定路径:   ' /Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock' } npm ERR!   达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM" "安装" NPM   呃!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / protractor,它没有   被锁定npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock'   npm WARN锁定错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock   失败{[错误:EACCES,打开   ' /Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock']   npm WARN锁定错误:-13,npm WARN锁定代码:' EACCES',npm   WARN锁定路径:   ' /Users/twer/.npm/_locks/karma-chrome-launcher-4c47483197e76b06.lock'   } npm ERR!达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM"   "安装"错误的ERR!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / karma-chrome-launcher,which   没有被锁定npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock'警告   锁定错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock failed {   [错误:EACCES,打开   ' /Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock'] npm   WARN锁定错误:-13,npm WARN锁定代码:' EACCES',npm WARN   锁定路径:   ' /Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock' } npm   呃!达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM" "安装"   错误的ERR!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / karma-jasmine,没有&t   被锁定npm WARN锁定错误:EACCES,打开   ' /Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock' npm WARN锁定
  在错误(本机)npm WARN锁定   /Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock failed {[错误:   EACCES,open' /Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock'] npm   WARN锁定错误:-13,npm WARN锁定代码:' EACCES',npm WARN   锁定路径:' /Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock' }   错误的ERR!达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ NPM"   "安装"错误的ERR!节点v0.12.2 npm ERR! npm v2.7.4

     

npm ERR!尝试解锁   / Users / twer / angular-phonecat / node_modules / tmp,还没有   锁定

     

npm ERR!达尔文13.4.0 npm ERR! argv" node" "在/ usr / local / bin中/ 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   呃!退出状态1 npm ERR!错误的ERR!失败了   angular-phonecat@0.0.0预启动脚本' npm install'。错误的ERR!这是   最有可能是angular-phonecat包的问题,​​npm ERR!不   与npm本身。错误的ERR!告诉作者你的失败了   系统:npm ERR! npm install npm ERR!您可以通过以下方式获取信息:   错误的ERR! npm owner ls angular-phonecat npm ERR!有可能   上面的额外日志输出。

     

npm ERR!请在任何支持请求中包含以下文件:   错误的ERR! /Users/twer/angular-phonecat/npm-debug.log

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

1 个答案:

答案 0 :(得分:7)

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

您希望使用自己的用户权限运行npm,因此请使用

更改所有权来设置chown -R $USER <directory>
chown -R `whoami` <directory>

<directory>

- 两个命令都是相同的,其中/Users/twer是:

  • 您的主目录(/usr/local)用于本地安装;
  • 非系统软件包的机器目录,npm或者sudo尝试使用的顶级目录,您在错误消息中看到,您可能需要在命令前添加{{{ 1}}在这种情况下。

这里的选项-R用于递归,因为它还为所有子目录设置了正确的所有权,这正是您想要的。

您希望避免npm一起运行sudorecommended by the npm creator Isaac Schlueter

  

我强烈建议您不要使用sudo进行包管理!包可以运行任意脚本,这使得包管理器命令与链锯发型一样安全。当然,它很快,肯定会切断任何障碍,但你可能真的希望这个障碍留在那里。