Nodejs/npm:如何重新安装/重新编译复制的应用程序包

dio*_*ney 6 offline package reinstall node.js npm

建立:

  • 具有Internet连接的VM npm install将执行以安装所有应用程序依赖项.结果将是一个包含应用程序及其依赖项的文件夹node_modules.

  • 应用程序模块之间是fi : mongoose,它在安装时用于node-gyp编译本机BSON扩展.

  • 应用程序文件夹被复制到另一个没有Internet连接的虚拟机,它完全正常运行,但编译后的扩展程序不起作用,但它的.js后备功能.

题:

如何在没有Internet连接的情况下重新安装/重新编译/重新生成新VM上的所有应用程序模块?

Pet*_*ons 16

这正是npm rebuild命令所做的.npm rebuild在将应用程序目录复制到新VM后,只需在app目录中运行,并且将重新编译任何二进制加载项以匹配当前的CPU体系结构和节点版本.如果npm install复制之前的初始文件完全成功,npm rebuild则第二个VM上的内容将不需要下载任何内容.只需确保第二个VM有一个合理关闭的节点版本和相应的低级编译器,库等(例如build-essential和python on debian).