【问题标题】:Getting Gradle to publish a source Jar instead of a standard compiled Jar让 Gradle 发布源 Jar 而不是标准编译的 Jar
【发布时间】:2012-05-08 15:11:16
【问题描述】:

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

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

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

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

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

artifacts {
    archives sourceJar
}

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

【问题讨论】:

  • 对于其他只想删除默认 JAR 的人:configurations.archives.artifacts.removeAll { it.archiveTask.is jar }

标签: gradle


【解决方案1】:

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

configurations{
  sourceArchives
}

artifacts{
  sourceArchives sourceJar
}

install.configuration = configurations.sourceArchives

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

【讨论】:

猜你喜欢
  • 2013-10-18
  • 1970-01-01
  • 2014-06-20
  • 2023-03-18
  • 1970-01-01
  • 2013-02-27
  • 2018-09-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多