2011-05-12 196 views
9

是否有任何方法可以在package.json文件中设置全局安装的NPM依赖项?npm package.json全局安装?

每当我运行npm update所有的依赖关系都安装在本地。

谢谢。

+2

虽然这是最好的,如果你有多个本地安装的库由于新版本出现的速度而并行执行项目。因为你在全球安装了一个更新的版本,所以打破你的其他项目很烦人。 – Raynos 2011-05-13 07:59:43

+0

@Raynos是啊这就是我为大部分软件包所做的。虽然 – Mark 2011-05-18 11:33:30

回答

3

我相信-g选项会导致全局安装。

+0

不仅仅是在命令行中,还有一些仅在全局中有用吗?我在哪里把它放在json – Mark 2011-05-18 11:32:55

+0

@Mark使用'npm link -g'?它可能工作! – Raynos 2011-05-18 11:57:26

+0

看起来,它安装全球目前的项目,而不是它的依赖项。 – 2013-06-09 00:26:47

1

是否在全局安装是为了在命令行上提供新脚本?如果是这样,我可能会为你解决一个问题。

只要安装您的包裹像往常一样(不-g):

npm install -S my_module_name 

包括-S标志或--save将有助于保持你的package.json文件保持最新状态。

和往常一样,您的项目的npm install步骤将在本地安装(如您所述)。但是,它也会生成一个本地文件夹,其中包含每个项目的npm提供的命令行可执行文件(位于node_modules/.bin/文件夹内)的符号链接。

该文件夹添加到系统路径,以便能够npm模块的命令行访问,而无需通过-g,或root访问需要安装到一台机器:

export PATH=/path/to/your/project/source/node_modules/.bin/:$PATH