3

我的团队目前有两个 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 文件以从多个存储库下载,但我只是想知道是否真的可以将工件上传到多个存储库,因为我们似乎无法让它工作。

4

1 回答 1

12

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

task uploadExternal(type: Upload) {
    configuration = configurations.archives
    uploadDescriptor = true
    repositories { ... }        
}
于 2013-06-21T09:19:34.667 回答