我们在我们的Intranet中维护一个 Artifactory ,供开发团队使用。
当任何新的依赖项添加到任何项目时,我们会将新的jars上传到 Artifact 中。
目前这是一个繁琐的过程,我们正在尝试寻找是否有任何简单的出路。
当前的过程是-如果项目定义了新的依赖项,我们需要连接到Internet并使用gradle构建项目,以便我们了解什么是新的依赖项(实际上,我们跟踪日志是什么依赖项和可传递的依赖项)正在下载的 jar )
然后,我们单独创建这些新 jar 的zip文件,然后上传到 Artifact 。这既费时又容易出错
有没有更好的方法来实现这一目标?当我使用gradle连接到Internet进行构建时,是否可以将新依赖项发布到Maven本地存储库或新文件夹中,以便我们可以单独压缩该文件夹并上传到 Artifact 上?
如果有人对上述问题有简单的解决方法,请回复。
最佳答案
这是一个明智的答案,但同样适用于gradle。
您应该能够在 Artifact 中定义虚拟存储库,该存储库是本地(托管工厂)和Maven中央存储库(托管Internet)的组合。
您的maven / gardle用户将在其settings.xml中配置虚拟存储库(而不是Internet),然后在加载依赖项时,maven将按以下顺序在目录中查找:
1)本地用户仓库位于〜/ .m2 / repo
2) Artifact 本地存储库
3)Maven中央
每次从3加载新的 Artifact (以前没有人要求过)时,它将被添加到2和1,因此,下一个要求该依赖项的用户只能加载2。
参见https://www.jfrog.com/confluence/display/RTF/Virtual+Repositories
关于maven - 注册上传到 Artifact ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46077367/