我最近在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 ('whatever'),然后安装它 在本地,在你的根 项目。 如果您正在安装想要在shell中使用的东西,则在 命令行之类的,安装 它是全局的,所以它是二进制的 在PATH环境中结束 变量。

我最近刚刚使用了这个建议,而且很顺利。我永远在全局安装(因为它是一个命令行工具),并在本地安装所有应用程序模块。

然而,如果你想全局使用某些模块(例如express或mongodb),请采纳以下建议(也来自blog.nodejs.org):

Of course, there are some cases where you want to do both. Coffee-script and Express both are good examples of apps that have a command line interface, as well as a library. In those cases, you can do one of the following: Install it in both places. Seriously, are you that short on disk space? It’s fine, really. They’re tiny JavaScript programs. Install it globally, and then npm link coffee-script or npm link express (if you’re on a platform that supports symbolic links.) Then you only need to update the global copy to update all the symlinks as well. The first option is the best in my opinion. Simple, clear, explicit. The second is really handy if you are going to re-use the same library in a bunch of different projects. (More on npm link in a future installment.)

我没有测试这些变化,但它们似乎相当简单。


我喜欢打包。Json文件在你的应用文件夹根。

这是我用的一个

nvm use v0.6.4
npm install

你可能没有在全局位置(例如/usr/local/lib/node_modules)安装节点模块的写权限,在这种情况下,以root身份运行npm install -g package。


我在Ubuntu上安装Express时遇到了一些问题:

如果由于某种原因NPM命令缺失,请使用NPM帮助测试NPM命令。如果没有,请遵循以下步骤- http://arnolog.net/post/8424207595/installing-node-js-npm-express-mongoose-on-ubuntu

如果只有Express命令不能工作,请尝试:

sudo npm install -g express

这使得一切工作,因为我习惯了Windows7和OSX。

希望这能有所帮助!


在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添加到.bash_profile中的export PATH行中,保存它并获取它之后,我就可以运行了

$> karma --help

正常。


在Ubuntu中,在.bashrc文件中设置node_modules的路径

导出路径= " / home /用户名/ node_modules。斌:$路径”


你需要有超级用户权限,

 sudo npm install -g <package name>

根据官方文档推荐的步骤在我的Macbook上很管用。

总结步骤:

使用以下命令实例nvm: Curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

您可以在此页面查看最新版本: https://github.com/nvm-sh/nvm

如果文件不存在,则在主目录中创建.zshrc。 触摸. zshrc 将以下内容放在.zshrc文件中

出口NVM_DIR = $ HOME /”。nvm" [s "$NVM_DIR/nvm.sh] “$NVM_DIR/nvm.sh

使用命令安装nvm

NVM install——lts

重启终端-你已经准备好使用NPM安装全局包了。


由于npm版本8 -g或——global标志已弃用,我在控制台收到警告(官方文档尚未更新):

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.

所以全局安装模块的新命令是

npm install forever --location=global

其中永远是要安装的包的名称。