【问题标题】:How to upload module to Bintray using custom artifact name?如何使用自定义工件名称将模块上传到 Bintray?
【发布时间】:2023-04-04 06:54:01
【问题描述】:

我使用以下标准代码将我的库上传到 bintray。

我有两个模块,一个用于测试的“示例”模块和一个“库”模块。当我将它上传到 bintray 时,我想使用自定义 artifactId,但 artifactId 被更改为“库”(模块名称),我不想要这个!

我知道我可以将我的“库”模块重命名为所需的名称,但我也想保留这种模块名称结构。

我想要类似:com.mydomain.something:CUSTOM-NAME:version.
而不是:com.mydomain.something:LIBRARY:version

ext {
    bintrayRepo = 'maven'
    bintrayName = 'MyLibrary'

    // Maven metadata
    publishedGroupId = 'com.domain.name'
    libraryName = 'MyLibrary'
    artifact = 'custom-name'

    libraryDescription = 'description'
    libraryVersion = '0.0.1'

    developerId = 'someone'
    developerName = 'someone'
    developerEmail = 'someone@gmail.com'
}

我知道这一切都是可能的,因为我已经看到几个使用此模块名称结构并在 bintray/JCenter 上具有“自定义”artifactId 的存储库。

例子:

【问题讨论】:

  • 我遇到了同样的问题。您设法解决了这个问题吗?
  • @Flitskikker 看到我的回答。

标签: android maven android-library bintray jcenter


【解决方案1】:

使用 Bintray 发布插件

使用com.novoda:bintray-release时,在build.gradlepublish配置中使用artifactId而不是artifact

publish {
    // ...
    artifactId = sporkArtifactId
    // ...
}

使用第二个示例的 gradle-maven-push

查看适用于gradle-mvn-push.gradlebuild.gradle

设置定义在gradle.properties:

POM_NAME=FloatingActionButton
POM_ARTIFACT_ID=floatingactionbutton
POM_PACKAGING=aar

【讨论】:

    【解决方案2】:

    你所要做的就是添加

    archivesBaseName = 'myartifactid'
    

    到您的 library 模块 gradle 文件。这将重命名所有存档输出,因此不仅是 aar,还有 javadoc 和源。

    【讨论】:

    • 添加此代码后,它将文件推送到 bintray 上的不同文件夹中:一部分在库文件夹中,另一部分到 myartifactid
    • 用于正常工作。这可能不再适用于较新版本的 Gradle 插件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-04
    • 2013-06-09
    • 1970-01-01
    • 1970-01-01
    • 2012-05-27
    • 2017-08-15
    • 1970-01-01
    相关资源
    最近更新 更多