我有两个连接库:一个用于发行版,另一个用于快照。我在发布任务中有代码来定义要根据doc选择哪个回购:
repositories {
repositories {
maven {
credentials {
username "$nexusUser"
password "$nexusPassword"
}
def releasesRepoUrl = "https://xxx/repository/factoring-maven-release/"
def snapshotsRepoUrl = "https://xxx/repository/factoring-maven-snapshots/"
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
}
}
publications {
create("default", MavenPublication.class) {
from(components["java"])
}
}
}
}和包括在此代码中的子项目:
rootProject.name = 'xxx-integration-lib'
include 'xxx-service1-dto'
include 'xxx-service2-dto'子项目build.gradle:
group = "xxx"
version = "0.0.6-SNAPSHOT"但是这不起作用,因为子项目版本总是没有指定。试过:
有什么想法吗?
发布于 2020-07-13 06:59:02
对我来说,唯一可行的方法是解决办法:将子项目版本管理放在根build.gradle中,如下所示
project(':subproject1') {
version '0.0.6-SNAPSHOT'
}
project(':subproject2') {
version '0.0.12-SNAPSHOT'
}
project(':subproject14) {
version '0.0.5-SNAPSHOT'
}然后project.version属性被注入校正
发布于 2020-07-09 14:06:19
我正在使用gradle处理多模块项目,我们不是在submodules.All中设置版本,而是在gradle.properties文件中将其设置在基本项目中。
group = "xxx"
version = "0.0.6-SNAPSHOT"然后你可以使用它:
url = project.version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrlhttps://stackoverflow.com/questions/62815923
复制相似问题