使用npm进行安装时,请使用自定义目录名而不是node_modules

时间:2014-02-17 00:20:25

标签: node.js npm config

我创建了package.json,我运行npm install,它运行正常。它在我的根文件夹中创建了一个node_modules目录(我可以使用--prefix选项进行更改)。但是,我不喜欢那么多的下划线。我想更改NPM将模块下载到的目录的名称。我希望将其命名为nmodsnode-modules或类似名称。

Bower可以通过阅读当前目录中directory文件中的.bowerrc属性来做类似的事情。有没有办法对NPM做同样的事情?

3 个答案:

答案 0 :(得分:40)

无法改变它。 node_modules文件夹实际上并不特定于NPM,它是Node的核心模块加载系统的一部分。 Seen here in module.js

如你所提到的那样全局更改它也可能会破坏你正在使用的一些模块,因为模块有时包含其依赖关系已经存在于node_modules中并且更改它会导致它被破坏。 / p>

答案 1 :(得分:2)

通过添加名为“ .yarnrc”的文件,您可以轻松实现此目标 内容如下:

# ./.yarnrc
--modules-folder lib

下次运行“ yarn”时,它将创建 lib 文件夹并在其中安装软件包,而不是在 node_modules 中安装软件包。

现在,只要能使'npm install'变得更聪明。

答案 2 :(得分:1)

无法在npm中对其进行更改,但是,可以在yarn package manager中进行配置。

yarn install --modules-folder <path>