为不同版本的Node.js使用不同的node_modules目录

在使用NVM或在Node.js版本之间切换时,必须为每个节点版本重新构buildnode_modules。 是否有可能以某种方式为每个版本使用不同的node_modules目录,而不必每次在不同版本之间切换时重新生成内容?

就像是:

node_modules_v8/ node_modules_v7/ node_modules_v6/ 

也许有更好的方法来做到这一点,不知道。

三个build议(按我的先导顺序):

  1. 使用Docker来帮助configurationContainers和Volumes ,根据您的节点版本在指向的地方切换。
  2. 将一个符号链接( linux , windows )设置到node_modules文件夹中,该文件夹指向node期望运行的模块的正确版本。
  3. 与操作符号链接类似,在执行node命令之前,使用NODE_PATH设置并将其指向node_modules文件夹的正确caching(即NODE_PATH = / etc / node_v8)。 如果你在全局设置它,它会限制你在那个盒子上运行多个节点的实例,所以你需要在每个stream程实例上设置NODE_PATH