【问题标题】:Configure Gradle's Artifactory plugin to publish to release or snapshot repository配置 Gradle 的 Artifactory 插件以发布到发布或快照存储库
【发布时间】:2014-02-13 15:13:26
【问题描述】:

Artifactory 有两个用于本地库的预定义存储库:

  • libs-release-local:内部图书馆的本地存储库
  • libs-snapshot-local:内部快照的本地存储库

Artifactory 的 Gradle 脚本生成器可以使用 Gradle 的 artifactory 插件生成仅使用一个存储库进行工件发布的脚本。

这是一个示例(仅相关部分):

artifactory {
    contextUrl = "${artifactory_contextUrl}"
    publish {
        repository {
            repoKey = 'libs-release-local'
            username = "${artifactory_user}"
            password = "${artifactory_password}"
            maven = true

        }
    }
    resolve {
        repository {
            repoKey = 'libs-release'
            username = "${artifactory_user}"
            password = "${artifactory_password}"
            maven = true

        }
    }
}

我想根据版本配置插件以使用libs-release-locallibs-snapshot-local 存储库(即,如果版本以-SNAPSHOT 结尾,则发布到libs-snapshot-local)。

我看到使用 Gradle 的集成 maven 插件可以实现这一点(请参阅 uploadArchives 任务中 mavenDeployersnapshotRepository 元素),但此功能在 artifactory 插件中似乎不可用。

有没有办法实现这种期望的行为?

【问题讨论】:

    标签: gradle artifactory


    【解决方案1】:

    由于它是一个 groovy 代码,请继续使用变量,这取决于版本。

    String repo = version.endsWith('SNAPSHOT') ? 'libs-snapshot-local' : 'libs-release-local'   
    

    ...

    repository {
            repoKey = repo
            username = "${artifactory_user}"
            password = "${artifactory_password}"
            maven = true
    
        }
    

    【讨论】:

      猜你喜欢
      • 2020-12-08
      • 2014-03-04
      • 1970-01-01
      • 1970-01-01
      • 2023-04-04
      • 2015-02-27
      • 2012-06-24
      • 2019-11-22
      • 2021-05-09
      相关资源
      最近更新 更多