node.js – npm本地安装包到自定义位置

是否可以通过命令标志或环境变量来指定npm install的自定义包目标?

默认情况下,npm本地安装结束于当前目录下的node_modules,但我希望它安装到不同目录中的node_modules,例如vendor / node_modules。我怎么能做到这一点?

TL; DR

你可以通过使用–prefix标志和–global *标志来实现。

pje@friendbear:~/foo $ npm install bower -g --prefix ./vendor/node_modules
bower@0.7.0 /Users/pje/foo/vendor/node_modules/bower

*即使这是一个“全局”安装,安装的bin不能通过命令行访问,除非在PATH中存在〜/ foo / vendor / node_modules。

TL; R

npm的每个可配置属性可以在六个不同位置中的任何一个中设置。优先级顺序:

>命令行标志:–prefix ./vendor/node_modules
>环境变量:NPM_CONFIG_PREFIX =。/ vendor / node_modules
>用户配置文件:$ HOME / .npmrc或userconfig param
>全局配置文件:$ PREFIX / etc / npmrc或userconfig参数
>内置配置文件:path / to / npm / itself / npmrc
>默认配置:node_modules/npmconf/config-defs.js

默认情况下,本地安装的软件包进入./node_modules。全局变量进入前缀配置变量(默认情况下为/ usr / local)。

您可以运行npm配置列表来查看您当前的配置和npm config编辑更改它。

PS

一般来说,npm的文档真的很有帮助。 folders部分是一个很好的结构概述的npm和config部分回答这个问题。

http://stackoverflow.com/questions/14742553/npm-local-install-package-to-custom-location

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:node.js – npm本地安装包到自定义位置