【问题标题】:How do you use Maven-Publish Android Gradle Plugin's generated components in Kotlin DSL (build.gradle.kts)?如何在 Kotlin DSL (build.gradle.kts) 中使用 Maven-Publish Android Gradle Plugin 生成的组件?
【发布时间】:2021-05-15 16:06:40
【问题描述】:

目前我正在使用旧的 Kotlin DSL 构建脚本,该脚本将 Android AAR 库发布到 Maven 存储库。通过实现配置的简单迭代,将依赖项添加到 pom-default.xml。类似这样:

    withXml {
       val dependenciesNode = asNode().appendNode("dependencies")
       configurations.getByName("implementation") {
         dependencies.forEach {
            val dependencyNode = dependenciesNode.appendNode("dependency")
            dependencyNode.appendNode("groupId", it.group)
            dependencyNode.appendNode("artifactId", it.name)
            dependencyNode.appendNode("version", it.version)
         }
       }     
    }       

这不会翻译排除语句,因此现在发布具有冲突类的无用损坏库。我希望能够改用 Android Gradle Plugin 生成的构建工件组件,因为我知道通过使用这些组件,pom 文件将自动生成正确的依赖项列表(可能带有排除条款)。

此处提供了执行此操作的文档: https://developer.android.com/studio/build/maven-publish-plugin

不幸的是,一如既往,给出的示例是 Groovy,我找不到任何可以在 Kotlin Gradle 脚本中使用的语法示例。

from(components["release"])

...没用。

【问题讨论】:

    标签: java android maven kotlin gradle


    【解决方案1】:

    好吧,原来...

    from(components["release"])
    

    ...确实有效,我只是没有放入...

    afterEvaluate {
    

    ...条款,鲁莽地假设这只是一个 Groovy 的事情。

    记住孩子们,远离毒品,在学校努力学习并忠实地按照文档进行操作。

    【讨论】:

      猜你喜欢
      • 2015-05-03
      • 1970-01-01
      • 2018-12-19
      • 1970-01-01
      • 2019-07-10
      • 1970-01-01
      • 1970-01-01
      • 2020-01-18
      • 2019-04-13
      相关资源
      最近更新 更多