AngularJS phonecat 应用程序中的 Npm 启动问题
Posted
技术标签:
【中文标题】AngularJS phonecat 应用程序中的 Npm 启动问题【英文标题】:Npm start issues in AngularJS phonecat application 【发布时间】:2015-06-17 15:06:55 【问题描述】:我下载了 AngularJS phonecat 应用程序,并在全球范围内安装了 bower、http-server、karma、protractor。但是当我使用代码移动到目录并尝试“npm start”时,它会运行“npm install”并显示以下错误:
angular-phonecat@0.0.0 prestart /Users/twer/angular-phonecat
npm 安装
npm WARN 锁定错误:EACCES,打开 '/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock' npm WARN 锁定 在错误(本机)npm WARN 锁定 /Users/twer/.npm/_locks/bower-d21e2b2886728075.lock 失败 [错误: EACCES,打开'/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock'] npm WARN 锁定错误:-13,npm WARN 锁定代码:'EACCES',npm WARN 锁定路径: '/Users/twer/.npm/_locks/bower-d21e2b2886728075.lock' npm 错误! 达尔文 13.4.0 npm 错误! argv “节点” “/usr/local/bin/npm” “安装” npm 呃!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /Users/twer/angular-phonecat/node_modules/bower,还没有 锁定 npm WARN 锁定错误:EACCES,打开 '/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock' npm WARN 锁定错误(本机) npm WARN 锁定 /Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock 失败 [错误:EACCES,打开 '/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock'] npm WARN 锁定错误:-13,npm WARN 锁定代码:'EACCES',npm WARN 锁定路径: '/Users/twer/.npm/_locks/http-server-0dbc63e1ce281434.lock' npm 错误! 达尔文 13.4.0 npm 错误! argv “节点” “/usr/local/bin/npm” “安装” npm 呃!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /Users/twer/angular-phonecat/node_modules/http-server,没有 已锁定 npm WARN 锁定错误:EACCES,打开 '/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock' npm WARN 锁定错误(本机) npm WARN 锁定 /Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock 失败 [错误: EACCES,打开'/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock'] npm WARN 锁定错误:-13,npm WARN 锁定代码:'EACCES',npm WARN 锁定路径: '/Users/twer/.npm/_locks/shelljs-e4f96e79494ea210.lock' npm 错误! 达尔文 13.4.0 npm 错误! argv “节点” “/usr/local/bin/npm” “安装” npm 呃!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /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 失败 [错误: EACCES,打开'/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock'] npm WARN 锁定错误:-13,npm WARN 锁定代码:'EACCES',npm WARN 锁定路径: '/Users/twer/.npm/_locks/karma-e8390a258c010e78.lock' npm 错误! 达尔文 13.4.0 npm 错误! argv “节点” “/usr/local/bin/npm” “安装” npm 呃!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /Users/twer/angular-phonecat/node_modules/karma,还没有 锁定 npm WARN 锁定错误:EACCES,打开 '/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock' npm WARN 锁定错误(本机) npm WARN 锁定 /Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock 失败 [错误:EACCES,打开 '/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock'] npm WARN 锁定错误:-13,npm WARN 锁定代码:'EACCES',npm WARN 锁定路径: '/Users/twer/.npm/_locks/protractor-a03b9e77140a9911.lock' npm 错误! 达尔文 13.4.0 npm 错误! argv “节点” “/usr/local/bin/npm” “安装” npm 呃!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /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 错误!达尔文 13.4.0 npm 错误! argv "节点" "/usr/local/bin/npm" “安装” npm 错误!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /Users/twer/angular-phonecat/node_modules/karma-chrome-launcher,其中 尚未锁定 npm WARN 锁定错误:EACCES,打开 '/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock' npm WARN 锁定错误(本机) npm WARN 锁定 /Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock 失败 [错误:EACCES,打开 '/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock'] npm WARN 锁定 errno:-13,npm WARN 锁定代码:'EACCES',npm WARN 锁定路径: '/Users/twer/.npm/_locks/karma-jasmine-435fcdaa8b86b427.lock' npm 呃!达尔文 13.4.0 npm 错误! argv "节点" "/usr/local/bin/npm" "安装" npm 错误!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /Users/twer/angular-phonecat/node_modules/karma-jasmine,没有 已锁定 npm WARN 锁定错误:EACCES,打开 '/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock' npm WARN 锁定 在错误(本机)npm WARN 锁定 /Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock 失败 [错误: EACCES,打开'/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock'] npm WARN 锁定 errno:-13,npm WARN 锁定代码:'EACCES',npm WARN 锁定路径:'/Users/twer/.npm/_locks/tmp-44bc7858c2a6d09a.lock' npm 错误!达尔文 13.4.0 npm 错误! argv "节点" "/usr/local/bin/npm" “安装” npm 错误!节点 v0.12.2 npm 错误! npm v2.7.4
npm 错误!尝试解锁 /Users/twer/angular-phonecat/node_modules/tmp,还没有 锁定
npm 错误!达尔文 13.4.0 npm 错误! argv "节点" "/usr/local/bin/npm" “开始” npm 错误!节点 v0.12.2 npm 错误! npm v2.7.4 npm 错误!代码 生命周期 npm 错误! angular-phonecat@0.0.0 预启动:
npm install
npm 呃!退出状态 1 npm ERR! npm 错误!失败了 angular-phonecat@0.0.0 预启动脚本“npm install”。 npm 错误!这是 很可能是 angular-phonecat 包的问题,npm ERR!不是 与 npm 本身。 npm 错误!告诉作者这在你的失败 系统:npm 错误! npm 安装 npm 错误!您可以通过以下方式获取他们的信息: npm 错误! npm 所有者 ls angular-phonecat npm ERR!有可能 上面的附加日志输出。npm 错误!请在任何支持请求中包含以下文件: npm 错误! /Users/twer/angular-phonecat/npm-debug.log
我该如何解决?提前致谢。
【问题讨论】:
看起来您之前可能已经使用sudo
安装了代码,创建了根拥有的文件。试试这个:sudo chown -R $USER /Users/twer/.npm/
我尝试了您的建议,但仍有一些问题。但是当我尝试“sudo npm start”时,它可以工作。谢谢你提醒我。
【参考方案1】:
这些错误意味着npm
由于权限错误,无法访问目录/Users/twer
及其子目录。
您想以自己的用户权限运行npm
,因此通过更改所有权来设置它们
chown -R $USER <directory>
或
chown -R `whoami` <directory>
-- 两个命令的作用相同,其中<directory>
是:
/Users/twer
);
您在错误消息中看到的非系统软件包的机器目录,/usr/local
或尝试使用的任何***目录 npm
,在这种情况下,您可能需要在命令前加上 sudo
.
此处的选项-R
用于递归,因为它还为所有子目录设置了正确的所有权,这正是您想要的。
您希望避免将npm
与sudo
一起运行,如recommended by the npm
creator Isaac Schlueter:
我强烈建议您不要使用 sudo 进行包管理! 包可以运行任意脚本,这使得 sudo 包管理器命令就像电锯理发一样安全。当然,它的速度很快,而且肯定会克服任何障碍,但你可能真的希望那个障碍留在那里。
【讨论】:
如果它可以帮助其他人 - 在我的 Mac OS 上,只有 $HOME/_locks 目录由 root 拥有。一定用过 sudo.. 改变了所有权和中提琴!以上是关于AngularJS phonecat 应用程序中的 Npm 启动问题的主要内容,如果未能解决你的问题,请参考以下文章