如何在Windows上更改npm的cachingpath(或完全禁用caching)?

我在Windows 7 x64开发机上安装了Node.js,手动方式:

mkdir C:\Devel\nodejs cd C:\Devel\nodejs set NODE_PATH=%CD% setx /M PATH "%PATH%;%NODE_PATH%" setx /M NODE_PATH "%NODE_PATH%\node_modules" 

我已经在C:\Devel\nodejs中将主节点x64二进制文件与npm包pipe理器一起C:\Devel\nodejs 。 像魅力一样工作,我可以更新主要的二进制文件,而无需处理安装程序。

我无法解决的唯一问题是移动caching文件夹。 当我安装本地软件包时:

 npm install express 

…caching放在%APP_DATA%\npm-cache文件夹下。 我想将其更改为:

C:\Devel\nodejs\npm-cache

我如何更改npmcaching文件夹,或完全禁用它?

您可以使用npm命令行更改npmcaching文件夹。 (请参阅: https : //npmjs.org/doc/config.html ,更具体地说https://www.npmjs.org/doc/misc/npm-config.html

所以你可能想试试这个命令:

 > npm config set cache C:\Devel\nodejs\npm-cache --global 

你也可以使用export npm_config_cache=/path/to/cache (Unix) export npm_config_cache=/path/to/cache设置一个环境variables,或者set npm_config_cache=C:\path\to\cache (Win)作为npm config set的替代scheme(对于所有configuration选项以npm计)。


对于使用docker的人,你可以在运行时添加env var:

docker run -e npm_config_cache=/path/to/cache mydockerimage:tag

另外,我发现运行更新命令也可以。 例如:“npm update npm”。 没有引号。 最后,可以检查他们的npm-cache目录,看看是否被填充。