.npm缓存与节点模块大小 [英] .npm cache vs node_modules size
本文介绍了.npm缓存与节点模块大小的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在构建节点应用程序时,我们使用.npm缓存,如下所示:
npm install --cache /tmp/node-cache/.npm --prefer-offline
然而,我有理由相信,缓存工作不正常,原因如下:
/tmp/node-cache/ # du -sh .npm/
177M .npm/
/tmp/build/ # du -sh node_modules/
1.1G node_modules
这是否意味着内部版本下载了额外的900 M,并且没有将它们缓存到.npm
目录中?
推荐答案
这是否意味着内部版本下载了额外的900 M,并且没有将它们缓存到.npm目录中?
这是可能的。但这种差异也可能是由于压缩和构建构件的组合造成的。
NPM缓存已压缩。node_modules
目录未压缩。
npm
几乎可以肯定只缓存源代码。如果您使用的是node-sass
、PhantomJS
、puppeteer
之类的东西,或者具有自定义安装脚本或其他构建步骤的其他东西,那么构建构件可能会使您的node_modules
膨胀。
我不一定会仅仅从大小差异得出缓存没有得到尊重的结论。你得做更多的调查。您可以尝试的一件事是:
- 删除
node_modules
(如果存在则删除package-lock.json
) npm cache clean --force
并确认缓存非常小npm install
- 再次检查
node_modules
和缓存的大小。
这篇关于.npm缓存与节点模块大小的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文