簡體   English   中英

使用 Kotlin DSL 發布庫

[英]Publishing Library using Kotlin DSL

我想使用 Kotlin DSL 發布一個 Android 庫。 我有一些錯誤

val sourcesJar by tasks.registering(Jar::class) {
    archiveClassifier.set("sources")
    from(sourceSets.getByName("main").allSource) 
}

未找到名稱為“main”的 SourceSet。

publishing {
    publications {
        create<MavenPublication>("maven") {
            groupId = artifactGroup
            artifactId = artifactID
            version = artifactVersion

            from(components["java"])
            artifact(sourcesJar.get())

            pom {
                ...
            }
        }
    }
}

未找到名為“java”的 SoftwareComponentInternal。

這些塊位於庫模塊build.gradle.kts中。
Gradle 版本:5.6.2

我該如何解決這些問題?

提前致謝。

更新

需要使用 android 源集。

val androidSourcesJar by tasks.registering(Jar::class) {
    archiveClassifier.set("sources")
    from(android.sourceSets.getByName("main").java.srcDirs)
}

我必須應用java插件apply plugin: "java" ,resp。 像這樣添加:

plugins {
 id 'java'

在官方 gradle 文檔中獲取有關 SoftwareComponent 的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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