如何使用Gradle构建源代码JAR?

2022-08-31 06:41:17

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

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

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

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


答案 1
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
}

答案 2

自 Gradle 6.0 起的解决方案

假设您将 / 插件与 Gradle 6.0 或更高版本一起使用,则可以使用以下配置获取任务:javajava-librarysourcesJar

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

如果您另外使用/ 插件(现在推荐),那么这也将与您的主要Java发布一起发布工件。maven-publishivy-publish*-sources.jar

另请参阅 Gradle 文档


推荐