簡體   English   中英

子項目中添加的依賴項在gradle多模塊kotlin DSL中的子項目中,每個子項目都不可見

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM