我正在使用 node-webkit 制作一个应用程序,并希望在打包最终版本的应用程序时尽可能少地包含文件,因为解压缩过程需要一些时间。
我查看了
npm dedupe
并使用 npm install --production
来去除重复项并仅获取生产文件,但是还剩下一些我不需要的 Readme
文件、benchmarks
、tests
和 build
文件。我想要的是每个模块在
node_modules
文件夹中只有一个 LICENSE
文件(如果存在),一个 package.json
和运行模块所需的其他内容,但是没有多余的东西。这个问题:How to automatically clean a node_modules directory for a SCM commit 也算是朝着同一个方向前进的,但它是关于提交的,不是我想要的。
这个问题:NPM clean modules 也与我的类似,但还不完全相同。 这个 答案对于为最终应用程序打包而言会更有效率。 更新
我尝试了从这里链接的自定义模块,但即使经过一些调整,它似乎仍无法正常工作。
总之,我还没有找到正确的答案。
以下是我要寻找的示例。
在我的项目中,我当前有两个依赖项:
socket.io
和 socket.io-client
。它们共占用 15 MB ,包含 550 个文件和 110 个文件夹。
手动清理不必要的文件,如
readme
、makefile
、VC++ 的构建文件(例如 .pdb
和 .obj
)和其他不必要的文件后,我将其缩小到了只有 2.74 MB,其中包含 265 个文件和 73 个文件夹。这只是两个模块而已。我想知道是否有一种自动化的方式来实现这一点,最好使用
npm
。
.bat | .sh
脚本来自动化你的发布等任务,但很快你就会使用grunt
。 - Gntem