[英]dependencies added in subprojects.forEach in gradle multi-module kotlin DSL is not visible to sub projects
我有一個帶有kotlin dsl的多模塊gradle項目,稱為流數據處理。 它在github 這里 。
根項目的build.gradle.kts
文件是 -
plugins {
base
java
}
allprojects {
group = "streams-data-processing"
version = "1.0"
repositories {
jcenter()
mavenCentral()
mavenLocal()
}
dependencies {
subprojects.forEach {
compile("org.apache.kafka:kafka-streams:2.2.0")
testImplementation("junit:junit:4.12")
}
}
}
settings.gradle.kts
是 -
rootProject.name = "stream-data-processing"
include ("word-count-demo")
我有一些名為word-count-demo
子項目。
此子項目的build.gradle.kts
文件是 -
plugins {
java
application
}
但是kafka-streams
中的類在word-count-demo
中不可用。
當我做`gradle word-count-demo:dependencies時,它沒有顯示子項目可用的kafka依賴項。
我不想在每個項目中明確指定依賴項。
這里出錯的錯誤是什么?
看起來這將是多次添加相同的依賴項。 我認為你需要翻轉它並在subprojects
調用dependencies
,並在所有subprojects
之外 allprojects
,如下所示:
allprojects {
group ...
version ...
repositories ...
}
subprojects {
dependencies {
compile("org.apache.kafka:kafka-streams:2.2.0")
testImplementation("junit:junit:4.12")
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.