gpt4 book ai didi

java - jar 的 Gradle 自定义任务

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:12:57 27 4
gpt4 key购买 nike

我正在为我的 Java 项目使用 Gradle,我想知道是否有可能阻止 gradle build 每次执行时都创建一个 jar 文件。

此外,是否可以在特定位置 build/myAppJar/ 创建具有依赖项的 Jar 的自定义任务。

到目前为止,这是自定义任务的内容:

task toJar (type: Jar) {
from configurations.compile.collect { zipTree it }
manifest {
attributes 'Implementation-Title': 'myApp',
'Implementation-Version': 1.0,
'Main-Class': mainClassName
}
}

以上代码将在build/libs 下创建jar 文件,该文件不包含编译后的文件,只包含依赖项。

谢谢!

最佳答案

build 任务来自 java 插件。您可以控制何时使用类似这样的东西构建 jar:

jar {
onlyIf { condition }
}

您可以将 jar 设置为在声明其他内容为 true 时构建,或者将其硬设置为 false 以从不构建 jar。

您可以在您的 toJar 自定义任务中包含源集,以将编译后的文件包含到您的 jar 中。

task toJar (type: Jar) {
from sourceSets.all
}

您明确要求将所有编译时依赖项包含在此处的 jar 中:from configurations.compile.collect

引用:Gradle java plugin

关于java - jar 的 Gradle 自定义任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31031499/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com