0

我想发布 build.gradle 文件的一些常见部分,以便在不同的项目中重用(使用apply from: url_to_file构造)。为了实现这一点,我创建了一个名为 gradle-common 的项目,其中包含那些常见的构建文件,其中包含以下build.gradle文件:

group 'org.example'
version '0.1.0'

apply plugin: 'maven-publish'

publishing {
    publications {
        mavenJava(MavenPublication) {
            artifact source: file('files/first.gradle'), classifier: 'first'
        }
        mavenJava(MavenPublication) {
            artifact source: file('files/second.gradle'), classifier: 'second'
        }
    }
    repositories {
        mavenLocal()
    }
}

在 maven 存储库中发布后的文件有如下文件:

  • gradle-common-0.1.0-first.gradle
  • gradle-common-0.1.0-second.gradle

我的问题是:如何从已发布的工件和分类器中删除版本号?对我来说,理想的文件是:

  • 第一个.gradle
  • 第二个.gradle
4

1 回答 1

0

您的问题有很多不同的答案,但我认为您正在尝试创建插件通常在不创建插件的情况下所做的事情。

向多个 gradle 项目添加功能的最佳方法是创建一个插件。您还可以利用本简单教程未显示的规则,但您可以检查一些 gradle 本机插件,例如maven-publish

要回答您的问题,不可能在没有版本的情况下将工件发布到 Maven 存储库。你必须下载一个版本(你可以用它my-artifact:1+来下载最新的),然后自己剥离版本。


我还想知道您打算如何将这些文件包含到您的特定 gradle 文件中。您将无法将它们用作依赖项,因为依赖项解析发生在读取脚本之后。如果您在脚本运行之前以某种方式下载它们,那么您可能不需要 Maven 存储库。

于 2017-02-10T02:33:41.193 回答