我有一个有效的gradle构建文件,它将一个jar文件构建到/ build / libs目录中。这很好。但是,我想添加一个任务,将这个jar文件打包到现有的war文件中(放入WEB-INF / libs目录中)。如何添加此任务?
最佳答案
我这样做如下:
def originalWar = file("../release/${sesame_version}/war/openrdf-sesame.war")
def outputDir = "./build/war"
def outputDirSesame = "$outputDir/sesame"
task extractWar(type: Copy) {
from zipTree(originalWar)
into "$outputDirSesame"
outputs.upToDateWhen { false }
}
task copyJar(type: Copy, dependsOn: extractWar) {
from "./build/libs"
into "$outputDirSesame/WEB-INF/lib"
outputs.upToDateWhen { false }
}
task buildWar(type: Zip, dependsOn: copyJar) {
archiveName "openrdf-sesame.war"
destinationDir file("$outputDir")
from "$outputDirSesame"
outputs.upToDateWhen { false }
}
build.dependsOn buildWar
关于gradle - Gradle:如何将输出jar文件添加到现有war文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31519425/