3 回答
TA贡献1862条经验 获得超6个赞
您可以使用--prefix
flag和--global
*标志来完成此操作。
pje@friendbear:~/foo $ npm install bower -g --prefix ./vendor/node_modules bower@0.7.0 /Users/pje/foo/vendor/node_modules/bower
*即使这是一个“全局”安装,除非~/foo/vendor/node_modules
存在,否则无法通过命令行访问已安装的bin PATH
。
每个可配置属性npm
都可以在六个不同的地方设置。按优先顺序排列:
命令行标志:
--prefix ./vendor/node_modules
环境变量:
NPM_CONFIG_PREFIX=./vendor/node_modules
用户配置文件:
$HOME/.npmrc
或userconfig
参数全局配置文件:
$PREFIX/etc/npmrc
或userconfig
param内置配置文件:
path/to/npm/itself/npmrc
默认情况下,本地安装的软件包会进入./node_modules
。全局的进入prefix
配置变量(/usr/local
默认情况下)。
您可以运行npm config list
以查看当前配置并npm config edit
进行更改。
PS
一般来说,npm
文档真的很有帮助。该文件夹的部分是新公共管理的一个良好的结构概述和配置部分回答了这个问题。
TA贡献1825条经验 获得超6个赞
如果你想在配置中这样做,你可以像这样设置npm配置:
npm config set prefix "$(pwd)/vendor/node_modules"
要么
npm config set prefix "$HOME/vendor/node_modules"
检查您的配置
npm config ls -l
或者@pje说并使用--prefix
旗帜
TA贡献1883条经验 获得超3个赞
对于OSX,您可以转到您的用户$HOME
(可能是/ Users / yourname /),如果它尚不存在,则创建一个.npmrc
文件(npm用于用户配置的文件),并为您的npm包创建一个目录安装在(例如,/ Users / yourname / npm)。在.npmrc文件中,将“prefix”设置为新的npm目录,这将是安装“全局”npm软件包的地方。显然,这些“全球”套餐仅适用于您的用户帐户。
在.npmrc中:
prefix=${HOME}/npm
然后从命令行运行此命令:
npm config ls -l
它应该在您自己的本地配置和全局npm配置上提供输出,您应该看到您的本地前缀配置被反映,可能在长输出列表的顶部附近。
为了安全起见,我建议使用这种方法来配置您的用户帐户的npm行为/usr/local
,而不是在我的其他地方看到的文件夹。
- 3 回答
- 0 关注
- 1976 浏览
添加回答
举报