我的构建失败,因为某些依赖项未得到满足。当我运行gradle依赖项任务时,我得到一些令人惊讶的东西。完全不同的项目项目:state:api和项目:bus:api不是区别对待,而是相同。这似乎是我将总线api的类放到我的类路径上的原因。但为什么?我正在使用gradle 4.7,我也在各个地方尝试过settings.gradle和rootProject.name,没有任何区别。
./gradlew server:dependencies --configuration compile | grep project
+--- project :bus:api
+--- project :bus:simple-list-bus
| +--- project :bus:api
+--- project :state:api -> project :bus:api
+--- project :state:simple-state
| +--- project :state:api -> project :bus:api
+--- project :utils:common
总线/的build.gradle
subprojects {
apply plugin: 'java'
apply plugin: 'maven'
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
mavenCentral()
}
}
总线/ API /的build.gradle
group 'kic'
version '1.0-SNAPSHOT'
archivesBaseName = 'kic-bus-api'
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
状态/的build.gradle
subprojects {
apply plugin: 'java'
apply plugin: 'maven'
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
mavenCentral()
}
}
状态/ API /的build.gradle
group 'kic'
version '1.0-SNAPSHOT'
archivesBaseName = 'kic-state-api'
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
答案 0 :(得分:0)
我看起来不再尊重settings.gradle中的rootProject.name了。看起来现在只有一个(顶部根)settings.gradle受尊重/允许。这意味着必须在最顶级的设置中指定子模块名称。如下所示:./ / p>
include ':bus'
include ':bus:api'
include ':bus:simple-list-bus'
include ':state'
include ':state:api'
include ':state:simple-state'
project(":state:api").name = "kic-state-api"
project(":state:simple-state").name = "kic-state-simple"
project(":bus:api").name = "kic-bus-api"
project(":bus:simple-list-bus").name = "kic-bus-simple"