无法运行全局安装的Node模块

3

我是node.js的新手,仍在设置其环境的过程中。

我安装了node.js v0.8.14和npm v1.1.65。我尝试为我正在工作的项目安装了几个模块,它们都可以正常工作。

然后,我安装了一些全局模块,例如node-dev和node-inspector。据我所知,没有错误。我得到了如下结果:

/usr/local/share/npm/bin/node-dev -> /usr/local/share/npm/lib/node_modules/node-dev/bin/node-dev
node-dev@2.0.2 /usr/local/share/npm/lib/node_modules/node-dev
├── growl@1.7.0
├── dateformat@1.0.6-1.2.3
└── chokidar@0.6.2

然而,当我尝试使用它时,它只是显示:
-bash: node-dev: command not found

我重新安装了它,但是没有改变。根据类似问题的一些答案,我将/usr/local/share/npm/bin/添加到了.bashrc,但它仍然无法正常工作。

最后,我甚至尝试导航到/usr/local/share/npm/bin/并直接调用node-dev,但仍然出现同样的错误。不过,如果我在Finder中双击node-dev文件,它会显示一些结果:

localhost:~ Xiao$ /usr/local/share/npm/lib/node_modules/node-dev/bin/node-dev ; exit;
Usage: node-dev [options] script [arguments]

我完全不知所措。有人对这里发生的事情有什么想法吗?

顺便说一下,我使用的是Mac OSX 10.8.4。

编辑:我发现如果我使用完整路径,这些全局安装的脚本将起作用。例如,/usr/local/share/npm/bin/node-dev有效,但node-dev则无效。即使我尝试在/usr/local/share/npm/bin下执行它也不行。


你是怎么安装的?你尝试过像 npm install -g node-dev 这样的命令吗? - Ali
是的,就像这样输入确切的命令。 - Selkie
2个回答

2

在你的'._bash_profile'文件中(如果不存在,请在$HOME目录下创建)

将路径添加到环境变量中:export PATH="$HOME/.npm-packages/bin:$PATH"

"最初的回答"翻译成英文是"Original Answer"


1

显然,我在.bashrc中添加bin路径是错误的。在Mac OS中应该使用.bash_profile。在$PATH中添加/usr/local/share/npm/bin/后,一切正常。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接