在我的gradle项目中,我想将jar上传到多个maven存储库,所以我执行以下操作:
uploadArchives {
repositories {
mavenLocal()
mavenDeployer {
repository(url: maven_repo_1) {
authentication(userName: maven_user_1, password: maven_password_1)
}
repository(url: maven_repo_2) {
authentication(userName: maven_user_2, password: maven_password_2)
}
}
}
}
我的问题是:
uploadArchives -r mavenLocal
注意:
以前我不得不删除maven存储库并运行uploadArchives
,我不认为这是最好的做法。但是我找不到用参数上传它的文档。
答案 0 :(得分:0)
您可以做的是使用 project property 选择正确的配置。
例如,如果您想默认部署到远程存储库,但使用切换到本地存储库的参数:
uploadArchives {
repositories {
if (project.hasProperty('localRepoPath')) {
mavenDeployer {
repository(url: uri(project.getProperty('localRepoPath')))
...
}
} else {
mavenDeployer {
repository(url: maven_repo_1)
...
}
}
}
}
然后,调用:
# Local upload
./gradlew uploadArchives -PlocalRepoPath=/tmp/maven
# Public upload
./gradlew uploadArchives
您可以根据自己的需要调整这种方法。