我的项目中有多个模块,其中只有一个是节点项目。然后我使用gradle-node-plugin与其余模块进行集成。由于我将jenkins用于CI,并且我希望jenkins完成项目目录的全面删除,并签出最近的版本,因此每次默认行为都是npm install (这里通过gradle-node-plugin npmInstall包装器,但同样的情况是普通npm)每次触发CI重建时下载所有依赖项。
我想知道是否有可能在全局的某个地方安装package.json依赖项(例如在.gradle/nodejs/<node-dist>/lib/node_modules/中安装gradle-node-plugin,或者将node_modules保存在构建树之外(例如在jenkins工作区文件夹中)。
编辑:
由于项目中的所有节点依赖项实际上大约需要300 io,代理缓存似乎不够,因为几乎没有什么因素--大小、解决所有这些问题所需的时间以及一些依赖项在下载后甚至需要重新编译(例如socket-io)。目前,我们使用的是build.gradle中定义的解决方案,它将node_modules移动到不会被清理的父文件夹,而不是使用符号链接。解决方案只在Jenkins环境中激活。
发布于 2015-02-11 19:39:30
你想要创建一个国家预防机制存储库的镜像吗?如果是这样的话,就有一个npm模块来做这个。
npm -镜像是从另一个npm注册中心镜像npm包的子集的实用工具。它同步特定节点模块的所有依赖项,并将它们写入本地文件系统,这样简单的all服务器就可以像公共It兼容的包注册表那样运行。
https://stackoverflow.com/questions/28458247
复制相似问题