题
我最近在OSX上安装了Node.js和NPM模块,我认为设置有问题:
npm install [MODULE] is not installing the node.js module to the default path
which is /usr/local/lib/node_modules.
解决方案
如果要在全球安装NPM模块,请确保使用新的 -g
例如:
npm install forever -g
自1.0RC以来有关NPM模块安装的一般建议(取自 blog.nodejs.org):
- 如果您要在程序中安装要使用的东西,请使用require('whything'),然后 在本地安装, ,在您项目的根源上。
- 如果您要在外壳,命令行或其他内容中安装要使用的东西, 在全球安装, ,使其二进制文件最终进入您的路径环境变量。
我最近刚刚使用了这一建议,并且下降得很顺利。我在全球范围内永远安装了(因为它是命令行工具)和本地所有应用程序模块。
但是,如果您想在全球使用某些模块(即Express或MongoDB),请接受此建议(也从 blog.nodejs.org):
当然,在某些情况下,您想同时做。 Coffee-Script和Express两者都是具有命令行接口以及库的应用程序的好示例。在这些情况下,您可以做以下一个:
- 在两个地方安装. 。说真的,您在磁盘空间上这么短吗?很好,真的。他们是小小的JavaScript程序。
- 在全球安装它,然后NPM链接咖啡 - 订阅或NPM Link Express(如果您在支持符号链接的平台上。),您只需要更新全局副本即可更新所有符号链接。
在我看来,第一个选择是最好的选择。简单,清晰,明确。如果您要在一系列不同的项目中重新使用同一库,那么第二个真的很方便。 (在将来分期付款中有关NPM链接的更多信息。)
我没有测试其中一种变体,但它们似乎很简单。
其他提示
在Mac上,我发现输出包含我正在寻找的信息:
$> npm install -g karma
...
...
> ws@0.4.25 install /usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)
...
$> ls /usr/local/share/npm/bin
karma nf
添加后 /usr/local/share/npm/bin
到 export PATH
在我的 .bash_profile
, ,保存它,并 source
它,我能够跑步
$> karma --help
一般。
我在Ubuntu上安装Express的问题:
如果由于某种原因丢失了NPM命令,请测试NPM命令 npm help
. 。如果没有,请遵循以下步骤 - http://arnolog.net/post/8424207595/installing-node-js-npm-express-mongoose-on-ubuntu
如果只是Express命令不起作用,请尝试:
sudo npm install -g express
这使我习惯于Windows7和OSX的所有工作都可以正常工作。
希望这可以帮助!
在ubuntu中,设置node_modules的路径 .bashrc 文件
导出路径=“/home/username/node_modules/.bin:$ path”
您可能没有写入权限可以在全局位置安装节点模块,例如 /usr/local/lib/node_modules
, ,在这种情况下,将NPM安装-G软件包作为root运行。