2021-11-29 15:44:33 +01:00
|
|
|
apply plugin: 'java-library'
|
|
|
|
|
|
|
|
java {
|
2023-10-13 23:22:42 +02:00
|
|
|
toolchain {
|
|
|
|
languageVersion = JavaLanguageVersion.of(21)
|
|
|
|
}
|
2021-11-29 15:44:33 +01:00
|
|
|
modularity.inferModulePath.set(true)
|
2023-05-24 21:08:11 +02:00
|
|
|
withSourcesJar()
|
|
|
|
withJavadocJar()
|
2021-11-29 15:44:33 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
jar {
|
|
|
|
manifest {
|
|
|
|
attributes('Implementation-Version': project.version)
|
|
|
|
}
|
2024-04-13 19:30:30 +02:00
|
|
|
duplicatesStrategy = DuplicatesStrategy.INCLUDE
|
|
|
|
}
|
|
|
|
|
|
|
|
tasks.withType(JavaCompile).configureEach {
|
|
|
|
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()
|
|
|
|
}
|
2021-11-29 15:44:33 +01:00
|
|
|
}
|
|
|
|
|
2024-04-13 19:30:30 +02:00
|
|
|
tasks.withType(Javadoc).configureEach {
|
|
|
|
doFirst {
|
|
|
|
options.addStringOption('Xdoclint:none', '-quiet')
|
|
|
|
options.encoding = 'UTF-8'
|
|
|
|
}
|
2021-11-29 15:44:33 +01:00
|
|
|
}
|
|
|
|
|
2024-04-13 19:30:30 +02:00
|
|
|
tasks.withType(JavaExec).configureEach {
|
|
|
|
doFirst {
|
|
|
|
jvmArguments.add("--module-path")
|
|
|
|
jvmArguments.add(classpath.asPath)
|
|
|
|
classpath = files()
|
|
|
|
}
|
2021-11-29 15:44:33 +01:00
|
|
|
}
|