所以我是一个漂亮的被宠坏了的rubyist,并且基本上不需要使用sudo安装任何东西。我已经安装了node.js和npm(使用Mac 64位.pkg授予,这可以让我知道我的系统上有什么),并且它们工作正常。现在如何安装jasmine-node(理想情况下不使用“sudo”)?
,执行以下操作:“请重试运行此命令,作为根/管理员” npm install jasmine-node -g
不工作,说:我走的意思sudo npm install jasmine-node -g
做:npm install jasmine-node
(不是全局)工作正常,但正确不设置我的路,不从命令行运行等
如何应该我安装jasmine-node?cd
到/usr/local/bin
并安装它(没有'-g'选项)吗?使用自制软件?或者使用我上面列出的sudo ...
命令?
谢谢。
/更新:如上所述,我使用通用安装程序在我的Lion OS X Mac(64位)上安装了node.js & npm,这里是我在/ usr/local/bin中的node/npm列表,情况下他们的帮助:
-rwxr-xr-x 1 24561 wheel 355 Apr 11 2012 /usr/local/bin/node-waf
-rwxr-xr-x 1 24561 wheel 18930304 Oct 25 14:07 /usr/local/bin/node
lrwxr-xr-x 1 root admin 38 Nov 12 10:00 /usr/local/bin/npm -> ../lib/node_modules/npm/bin/npm-cli.js
另外,我发现this answer,这是另外一个选择(除了三个我上面提出的)。
请让我知道哪种方法是推荐的(同样,最好不使用'sudo'是我的首选)。
/END UPDATE
以下是与-g
(全局)的回报(不使用sudo
)做这件事:
npm http GET https://registry.npmjs.org/jasmine-node
npm http 200 https://registry.npmjs.org/jasmine-node
npm http GET https://registry.npmjs.org/jasmine-node/-/jasmine-node-1.0.26.tgz
npm http 200 https://registry.npmjs.org/jasmine-node/-/jasmine-node-1.0.26.tgz
npm ERR! Error: EACCES, mkdir '/usr/local/lib/node_modules/jasmine-node'
npm ERR! { [Error: EACCES, mkdir '/usr/local/lib/node_modules/jasmine-node']
npm ERR! errno: 3,
npm ERR! code: 'EACCES',
npm ERR! path: '/usr/local/lib/node_modules/jasmine-node',
npm ERR! fstream_type: 'Directory',
npm ERR! fstream_path: '/usr/local/lib/node_modules/jasmine-node',
npm ERR! fstream_class: 'DirWriter',
npm ERR! fstream_stack:
npm ERR! [ 'DirWriter._create (/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:297:15)' ] }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! System Darwin 11.4.2
npm ERR! command "node" "/usr/local/bin/npm" "install" "jasmine-node" "-g"
npm ERR! cwd /Users/brad/play/troles
npm ERR! node -v v0.8.14
npm ERR! npm -v 1.1.65
npm ERR! path /usr/local/lib/node_modules/jasmine-node
npm ERR! fstream_path /usr/local/lib/node_modules/jasmine-node
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/jasmine-node'
npm ERR! fstream_stack DirWriter._create (/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:297:15)
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /Users/brad/play/troles/npm-debug.log
npm ERR! not ok code 0
Thanks @guillaume尽管存在足够的谷歌搜索结果,但我还是没有发现这个链接,你会认为我会碰到它!这解释得很好。 我想答案是(根据该帖子),大多数人只是使用sudo在全球安装它。我想我会使用你的建议,并在我的路径中添加'$ HOME/node_modules/.bin',除非我在接下来的几天看到更好的最佳实践建议 - 谢谢! – likethesky
我已经将您的答案标记为已接受,但我更喜欢更好的解决方案 - 如果有人找到答案,请添加! – likethesky