1

我有一个 android 项目,其中包括 3 个模块ModuleAModuleBModuleC。ModuleA 依赖于 ModuleB 和 ModuleC。我正在尝试使用android-maven-publish插件将 ModuleA 发布到 maven 存储库,并且看起来当我运行时它不会自动将 ModuleB 和 ModuleC 发布到 maven publishToMavenLocal。当我尝试使用已发布的 ModuleA 作为不同项目中的依赖项时,gradle 无法解析 ModuleB、ModuleC。

有什么我想念的吗?

我正在使用 gradle 插件版本 3.5.0、gradle 版本 5.4.1 和 mavenPublishVersion 3.6.2。

这就是项目的 gradle 看起来像 build.gradle(project)

buildScript {
     ...
     dependencies {
        classpath "digital.wup:android-maven-publish:3.6.2"
     }
}

allprojects {
    apply plugin: "digital.wup.android-maven-publish"
}

和 ModuleA 的 build.gradle build.gradle(ModuleA)

...
dependencies {
    api project(":moduleB")
    api project(":moduleC")
}

publishing {

    repositories {
       ...
       mavenLocal()
    }

    publications {
        mavenSrcModuleA(MavenPublication) {
            from components.android
            groupId = "com.example.sdk"
            artifactId = "moduleA"
            version = "1.0.0"
        }
    }
}

和 ModuleB 的 build.gradle build.gradle(ModuleB)

...
publishing {

    repositories {
       ...
       mavenLocal()
    }

    publications {
        mavenSrcModuleB(MavenPublication) {
            from components.android
            groupId = "com.example.sdk"
            artifactId = "moduleB"
            version = "1.0.0"
        }
    }
}

和 ModuleC 的 build.gradle build.gradle(ModuleC)

...
publishing {

    repositories {
       ...
       mavenLocal()
    }

    publications {
        mavenSrcModuleC(MavenPublication) {
            from components.android
            groupId = "com.example.sdk"
            artifactId = "moduleC"
            version = "1.0.0"
        }
    }
}
4

0 回答 0