如何使用 Gradle 构建源 JAR?

新手上路,请多包涵

我正在使用一个使用 Gradle 构建的开源项目。我想生成一个 (project)-sources.jar 文件,我可以将其加载到我的 IDE (IntelliJ IDEA) 中并通过项目进行调试。如果可以生成文件,我知道如何加载它。

我查看了该项目可用的 Gradle 任务,但没有一个生成源 jar 文件。

为该项目生成源 jar 文件的最简单方法是什么?

将源代码添加到包含已编译类文件的 jar 文件中也可以。

原文由 Paul D. Eden 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 669
2 个回答
task sourcesJar(type: Jar, dependsOn: classes) {
    classifier = 'sources'
    from sourceSets.main.allSource
}

task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}

artifacts {
    archives sourcesJar
    archives javadocJar
}

原文由 JB Nizet 发布,翻译遵循 CC BY-SA 3.0 许可协议

从 Gradle 6.0 开始的解决方案

假设您将 java / java-library 插件与 Gradle 6.0 或更高版本一起使用,您可以获得 sourcesJar 使用以下配置的任务:-

 java {
    withSourcesJar()
    // and/or analogously use “withJavadocJar()” to get a “javadocJar” task
}

如果您另外使用 maven-publish / ivy-publish 插件(现在推荐),那么这也会发布一个 *-sources.jar 以及您的主要 Java- 发布。

另请参阅 Gradle 文档

原文由 Chriki 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题