javascript - 运行 npm install -g yo 命令给出 -> ERR

标签 javascript npm yeoman yeoman-generator-angular

我刚刚尝试执行 npm install 但出现此错误。

npm install -g yo
npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/yo'
npm ERR!  { [Error: EACCES, mkdir '/usr/local/lib/node_modules/yo']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/usr/local/lib/node_modules/yo',
npm ERR!   fstream_type: 'Directory',
npm ERR!   fstream_path: '/usr/local/lib/node_modules/yo',
npm ERR!   fstream_class: 'DirWriter',
npm ERR!   fstream_stack: 
npm ERR!    [ '/usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23',
npm ERR!      '/usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:37:53',
npm ERR!      'Object.oncomplete (fs.js:107:15)' ] }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.
npm ERR! System Darwin 12.5.0
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "yo"
npm ERR! cwd /Users/hemanth
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.14
npm ERR! path /usr/local/lib/node_modules/yo
npm ERR! fstream_path /usr/local/lib/node_modules/yo
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, mkdir '/usr/local/lib/node_modules/yo'
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/fstream/lib/dir-writer.js:36:23
npm ERR! fstream_stack /usr/local/lib/node_modules/npm/node_modules/mkdirp/index.js:37:53
npm ERR! fstream_stack Object.oncomplete (fs.js:107:15)
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/hemanth/npm-debug.log
npm ERR! not ok code 0

我用 chown 更改了/usr/local 的权限,但我不确定这是否会影响我的问题。 我该如何解决?

最佳答案

编辑

啊,我看错了你的操作系统,你用的是 Mac。我会把它留在这里,因为它可能仍然有效(假设你通过 Homebrew 安装了节点)


我最近才开始在 Linux 上使用 npm,这就是我解决它的方法...

首先,将全局 npm 前缀设置为本地(对您的用户)安装

mkdir ~/.node && npm config set prefix ~/.node

1.4.20 及之前的 npm 是错误的(它忽略了 prefix 配置)所以我们要做的第一件事是将当前的 npm 安装到本地你的用户。

npm install -g --prefix=~/.node npm

现在剩下要做的就是更新您的环境变量。在 ~/.bashrc 或任何您喜欢的地方...

if [ -d "$HOME/.node/bin" ]; then
    PATH="$HOME/.node/bin:$PATH"
fi

export NODE_PATH="$NODE_PATH:$HOME/.node/lib/node_modules"

然后获取它,你就可以开始了

source ~/.bashrc

关于javascript - 运行 npm install -g yo 命令给出 -> ERR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25052705/

相关文章:

javascript - 使用ajax从php获取数据

javascript - 模块中的返回值返回空?

node.js - npm Bower 安装失败(卡在同一位置)

node.js - Yeoman 安装/Node 路径问题?

javascript - karma 单元测试 : Module name "react" has not been loaded yet for context: _. 使用 require([])

javascript - 如何在 IE11 中克隆 jQuery 对象及其子对象而不使用引用

javascript - 不同数量的元素,推送到表,javascript

javascript - 在heroku上运行 Angular 应用程序时出现应用程序错误

node.js - 无法运行 'npm start' ReactJS

angularjs - 如何将我的 AngularJS 静态站点上传到 Github Pages?