gpt4 book ai didi

gradle - 使用gradle从另一个jar文件构建一个jar文件

转载 作者:行者123 更新时间:2023-12-03 04:13:17 26 4
gpt4 key购买 nike

我有一个应该是简单的问题:我有一个充满jarfile的目录,并且我想使用gradle(v4.4.1)将这些jarfile的内容组合成一个jarfile(即,当我执行jar tf big-jar时) .jar,我想查看一堆类,而不是一堆jar)。我尝试了以下方法:

task bigJar(type: Jar) {
inputs.dir "$distLibsJar"
outputs.file "$distDir/big-jar.jar"

destinationDir = file("$distDir")
baseName = "big-jar"
from("$distLibsDir")
}

但这会产生一个以其他jar作为内容的jarfile,而不是以其他jar作为组合jar的内容的jarfile。

有任何想法吗?谢谢...

最佳答案

在这种情况下,最好的方法是使用阴影 jar 。为此,您可以在build.gradle中进行这种配置。发布一些示例

 apply plugin: 'com.github.johnrengelman.shadow'

shadowJar {
zip64 true
//classifier "shadow" can be mentioned according to need
mergeServiceFiles()
artifacts {
shadow(tasks.shadowJar.archivePath) {
builtBy shadowJar
}
}
}
artifacts {
archives shadowJar
}

distZip {
dependsOn shadowJar
//appendix='software'
eachFile { file ->
String path = file.relativePath
file.setPath(path.substring(path.indexOf("/")+1,path.length()))
}

doLast{
//operation to perform


}
}
distributions {
main {
contents {
//from and to can be mentioned here
}
}

}

希望能帮助到你

关于gradle - 使用gradle从另一个jar文件构建一个jar文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58243998/

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