Defer processing of zipTree source until execution time

Closes gh-25835
This commit is contained in:
Andy Wilkinson 2021-03-30 20:41:46 +01:00
parent fef24a300b
commit ca9a619259
3 changed files with 19 additions and 14 deletions

View File

@ -106,8 +106,8 @@ task fullJar(type: Jar) {
from(sourceSets.main.output) {
into "BOOT-INF/classes"
}
into("") {
from(zipTree(configurations.loader.singleFile)) {
from {
zipTree(configurations.loader.singleFile).matching {
exclude "META-INF/LICENSE.txt"
exclude "META-INF/NOTICE.txt"
}

View File

@ -11,9 +11,11 @@ def generatedResources = "${buildDir}/generated-resources/main"
configurations {
loader {
extendsFrom dependencyManagement
transitive = false
}
jarmode {
extendsFrom dependencyManagement
transitive = false
}
}
@ -40,10 +42,11 @@ sourceSets {
}
task reproducibleLoaderJar(type: Jar) {
dependsOn configurations.loader
from(zipTree(configurations.loader.incoming.files.filter {it.name.startsWith "spring-boot-loader" }.singleFile)) {
exclude "META-INF/LICENSE.txt"
exclude "META-INF/NOTICE.txt"
from {
zipTree(configurations.loader.incoming.files.singleFile).matching {
exclude "META-INF/LICENSE.txt"
exclude "META-INF/NOTICE.txt"
}
}
reproducibleFileOrder = true
preserveFileTimestamps = false
@ -52,10 +55,11 @@ task reproducibleLoaderJar(type: Jar) {
}
task reproducibleJarModeLayerToolsJar(type: Jar) {
dependsOn configurations.jarmode
from(zipTree(configurations.jarmode.incoming.files.filter {it.name.startsWith "spring-boot-jarmode-layertools" }.singleFile)) {
exclude "META-INF/LICENSE.txt"
exclude "META-INF/NOTICE.txt"
from {
zipTree(configurations.jarmode.incoming.files.singleFile).matching {
exclude "META-INF/LICENSE.txt"
exclude "META-INF/NOTICE.txt"
}
}
reproducibleFileOrder = true
preserveFileTimestamps = false

View File

@ -117,11 +117,12 @@ dependencies {
}
task extractTomcatConfigProperties(type: Sync) {
dependsOn configurations.tomcatDistribution
destinationDir = file(tomcatConfigProperties)
from(zipTree(configurations.tomcatDistribution.incoming.files.singleFile).matching {
include '**/conf/catalina.properties'
}.singleFile)
from {
zipTree(configurations.tomcatDistribution.incoming.files.singleFile).matching {
include '**/conf/catalina.properties'
}.singleFile
}
}
sourceSets {