让Gradle发布源Jar而不是标准编译的Jar

时间:2012-05-08 06:43:06

标签: gradle

我正在慢慢将两个项目移到Gradle。项目A生成一个由项目B使用的jar文件。

项目A是GWT组件,项目B是GWT应用程序。

如何让Gradle生成包含Project A的Java源代码而不是编译类的Jar?

我尝试将以下内容添加到build.gradle文件中,但这会生成第二个包含源文件的Jar文件 - 我希望主要文件包含源文件,以便在运行时将其发布到我的本地Maven存储库安装任务。

task sourceJar(type: Jar) {
    classifier = 'sources'
    from sourceSets.main.allSource
}

artifacts {
    archives sourceJar
}

有没有办法覆盖标准的Jar创建任务?

1 个答案:

答案 0 :(得分:3)

您可以定义自己的“myArtifacts”配置并将其发布。请注意,由于install任务的类型为Upload,因此您应该能够将默认工件配置从archives更改为sourceArchives

configurations{
  sourceArchives
}

artifacts{
  sourceArchives sourceJar
}

install.configuration = configurations.sourceArchives

希望install现在应该只发布sourceArchives配置的成员。

相关问题