【问题标题】:Publishing artifact from gradle project to bintray (maven repository)将工件从 gradle 项目发布到 bintray(maven 存储库)
【发布时间】:2013-12-06 13:39:34
【问题描述】:

我已将 Gradle 配置为使用 new Maven Publisher Plugin 发布项目工件,不幸的是,此插件在生成的 pom.xml 中存在依赖问题 - 依赖的范围为 runtime 而不是 compile。

我的配置是这样的:

apply plugin: 'maven-publish'

publishing {
    publications {
        mavenCustom(MavenPublication) {
            from components.java
        }
    }
    repositories {
        maven {
            url "https://api.bintray.com/maven/codearte/public/fairyland"
            credentials {
                username = bintrayUser
                password = bintrayKey
            }
        }
    }
}

只需一个命令即可轻松发布:

gradle publish

如何以旧(工作)方式实现这一目标?项目发布时是否可以自动进行项目标记?

【问题讨论】:

    标签: gradle release publish pom.xml bintray


    【解决方案1】:

    所有 POM 依赖项都具有 runtime 范围的事实是新的孵化 maven-publish 插件的已知限制。在此问题得到修复之前,您可以使用publication.pom.withXml 挂钩自行修复它,或者回退到maven 插件。这两个插件都记录在Gradle User Guide。

    标签是一个完全不同的问题。您可以使用第三方 Gradle SCM 插件之一或调用命令行工具(例如使用 Exec 任务)。

    【讨论】:

    • 在我看来新的 gradle maven-plugin 已经不是新的了,但问题仍然存在。
    • 这个“新的、正在孵化的”插件会完成吗?
    • 这是我在这里找到的示例“withXml hook”gist.github.com/bugs84/… discuss.gradle.org/t/… 它对我有用
    • 是否存在跟踪此限制的错误?
    • 来自discuss.gradle.org/t/… publishing { Publications { pom.withXml { asNode().dependencies.''.findAll() { it.scope.text() == 'runtime' && project .configurations.compile.allDependencies.find { dep -> dep.name == it.artifactId.text() } }.each() { it.scope.value = 'compile' } } } }跨度>
    【解决方案2】:

    好的,我想通了:

    apply plugin: 'maven'
    
    uploadArchives {
        repositories {
            mavenDeployer {
                name = 'Codearte Public Repository'
                repository(id: 'codearte-repository', url: 'https://api.bintray.com/maven/codearte/public/fairyland'){
                    authentication(userName: bintrayUser, password: bintrayKey)
            }
        }
    }
    

    使用命令上传:

    gradle uploadArchives
    

    【讨论】:

    猜你喜欢
    • 2019-12-27
    • 1970-01-01
    • 1970-01-01
    • 2019-06-13
    • 2015-01-25
    • 2016-05-30
    • 1970-01-01
    • 2017-12-26
    • 2020-12-11
    相关资源
    最近更新 更多