我的团队目前有两个Maven存储库,Gradle用于将工件上传到其中一个(取决于我们正在处理的项目)。其中一个回购是我们公司内部的私有,而另一个是我们和第三方公司可以访问的回购。
我们现在已经达到了这样的程度:如果我们对项目进行更改,我们希望将新创建的工件上传到两个repos而不是一个。但是我们发现写下面代码之类的东西不能按预期工作:
uploadArchives {
repositories {
repository(url: "http://repo1/releases")
snapshotRepository(url: "http://repo1/snapshot")
repository(url: "http://repo2/releases")
snapshotRepository(url: "http://repo2/snapshot")
}
}
出于某种原因,Gradle只将存档上传到列表中的第二个存储库(即repo2) 我意识到虽然我们可以将我们的Gradle文件从多个存储库编辑为 download ,但我只是想知道是否实际上可以上传一个工件到多个,因为我们似乎无法看到让这个工作。
答案 0 :(得分:12)
一个Upload
任务只能发布到一个存储库。但是,您可以声明另一个Upload
任务。类似的东西:
task uploadExternal(type: Upload) {
configuration = configurations.archives
uploadDescriptor = true
repositories { ... }
}