45 lines
1 KiB
Groovy
45 lines
1 KiB
Groovy
apply plugin: 'java-library'
|
|
|
|
java {
|
|
toolchain {
|
|
languageVersion = JavaLanguageVersion.of(21)
|
|
}
|
|
modularity.inferModulePath.set(true)
|
|
withSourcesJar()
|
|
withJavadocJar()
|
|
}
|
|
|
|
jar {
|
|
manifest {
|
|
attributes('Implementation-Version': project.version)
|
|
}
|
|
duplicatesStrategy = DuplicatesStrategy.INCLUDE
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
doFirst {
|
|
options.fork = true
|
|
options.forkOptions.jvmArgs += ['-Duser.language=en','-Duser.country=US']
|
|
options.encoding = 'UTF-8'
|
|
options.compilerArgs.add('-Xlint:all')
|
|
// enforce presence of module-info.java
|
|
options.compilerArgs.add("--module-path")
|
|
options.compilerArgs.add(classpath.asPath)
|
|
classpath = files()
|
|
}
|
|
}
|
|
|
|
tasks.withType(Javadoc) {
|
|
doFirst {
|
|
options.addStringOption('Xdoclint:none', '-quiet')
|
|
options.encoding = 'UTF-8'
|
|
}
|
|
}
|
|
|
|
tasks.withType(JavaExec) {
|
|
doFirst {
|
|
jvmArguments.add("--module-path")
|
|
jvmArguments.add(classpath.asPath)
|
|
classpath = files()
|
|
}
|
|
}
|