You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.3 KiB
51 lines
1.3 KiB
plugins { |
|
id 'java-library' |
|
id 'org.springframework.boot.conventions' |
|
id 'org.springframework.boot.deployed' |
|
id 'org.springframework.boot.internal-dependency-management' |
|
} |
|
|
|
description = 'Spring Boot Loader Tools' |
|
|
|
def generatedResources = "${buildDir}/generated-resources/main" |
|
|
|
configurations { |
|
loader |
|
} |
|
|
|
dependencies { |
|
api platform(project(':spring-boot-project:spring-boot-dependencies')) |
|
api "org.apache.commons:commons-compress:1.19" |
|
|
|
compileOnly "ch.qos.logback:logback-classic" |
|
|
|
implementation "org.springframework:spring-core" |
|
|
|
loader project(":spring-boot-project:spring-boot-tools:spring-boot-loader") |
|
|
|
testImplementation "org.assertj:assertj-core" |
|
testImplementation "org.junit.jupiter:junit-jupiter" |
|
testImplementation "org.mockito:mockito-core" |
|
testImplementation "org.zeroturnaround:zt-zip:1.13" |
|
} |
|
|
|
sourceSets { |
|
main { |
|
output.dir(generatedResources, builtBy: 'reproducibleLoaderJar') |
|
} |
|
} |
|
|
|
task reproducibleLoaderJar(type: Jar) { |
|
dependsOn configurations.loader |
|
from { |
|
zipTree(configurations.loader.incoming.files.filter {it.name.startsWith "spring-boot-loader" }.singleFile) |
|
} |
|
reproducibleFileOrder = true |
|
preserveFileTimestamps = false |
|
archiveFileName = 'spring-boot-loader.jar' |
|
destinationDirectory = file("${generatedResources}/META-INF/loader") |
|
} |
|
|
|
jar { |
|
dependsOn reproducibleLoaderJar |
|
}
|
|
|