Gradle 使用mavenDeployer将存档上载到多个repo

Gradle 使用mavenDeployer将存档上载到多个repo,gradle,Gradle,我有一个gradle项目,它就像另外两个项目的公共库 另外两个项目各自托管一个嵌入式maven存储库,我希望公共项目部署到该存储库 我试过这个: uploadArchives { repositories { mavenDeployer { repositories { repository(url: '../../../project-web-service/repo') repos

我有一个gradle项目,它就像另外两个项目的公共库

另外两个项目各自托管一个嵌入式maven存储库,我希望公共项目部署到该存储库

我试过这个:

uploadArchives {
    repositories {
        mavenDeployer {
            repositories {
                repository(url: '../../../project-web-service/repo')
                repository(url: '../../../project-app/repo')
            }
        }
    }
}
但这只适用于第二次回购


我已经读过了,但是它没有涵盖mavenDeployer,所以我现在有点卡住了。

您可以创建两个自己的任务(从
上传扩展而来),如下所示:

task uploadFirst(type: Upload) {
  uploadDescriptor = true
  repositories {
    mavenDeployer {
      repositories {
        repository(url: '../../../project-web-service/repo')
      }
    }
  }
}

task uploadSecond(type: Upload) {
  uploadDescriptor = true
  repositories {
    mavenDeployer {
      repositories {
        repository(url: '../../../project-app/repo')
      }
    }
  }
}

我也遇到了同样的问题,只是能够通过给额外的存储库命名来解决它,但仍然保留了它们自己的mavenDeployer闭包

例如:

uploadArchives {
    repositories {
        mavenDeployer {
            name = 'WebService'
            repository(url: '../../../project-web-service/repo')
        }
        mavenDeployer {
            name = 'App'
            repository(url: '../../../project-app/repo')
        }
    }
}

您需要声明另一个
上传
任务。或者可能上传到临时回购,然后复制到其他回购位置?我将如何配置它?(你可能已经猜到,gradle是新手)声明另一个
上传任务是更好的方法。(整个“embedded Maven repository”(嵌入式Maven repository)方法听起来很难闻,但这是一个不同的主题。)我该如何做呢?请参阅中的
Upload