Gradle将单个存档上载到多个存储库

Kyr*_*lia 3 gradle maven

我的团队目前有两个Maven存储库,Gradle用于将工件上传到其中一个(取决于我们正在处理的项目).其中一个回购是我们公司内部的私有,而另一个是我们和第三方公司可以访问的回购.

我们现在已经达到了这样的程度:如果我们对项目进行更改,我们希望将新创建的工件上载到两个存储库而不是一个存储库.但是我们发现写下面代码之类的东西不能按预期工作:

uploadArchives {
    repositories {
        repository(url: "http://repo1/releases")
        snapshotRepository(url: "http://repo1/snapshot")
        repository(url: "http://repo2/releases")
        snapshotRepository(url: "http://repo2/snapshot")
    }
}
Run Code Online (Sandbox Code Playgroud)

出于某种原因,Gradle仅将存档上传到列表中的第二个存储库(即repo2).
我意识到虽然我们可以编辑我们的Gradle文件以从多个存储库下载,但我只是想知道是否实际上可以将工件上传到多个,因为我们似乎无法使其工作.

Pet*_*ser 12

一个Upload任务只能发布到一个存储库.但是,您可以声明另一项Upload任务.就像是:

task uploadExternal(type: Upload) {
    configuration = configurations.archives
    uploadDescriptor = true
    repositories { ... }        
}
Run Code Online (Sandbox Code Playgroud)

  • 谢谢.这是Gradle设计的选择吗?就是想.=) (2认同)