aboutsummaryrefslogtreecommitdiffstats
path: root/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'build.gradle')
-rw-r--r--build.gradle70
1 files changed, 46 insertions, 24 deletions
diff --git a/build.gradle b/build.gradle
index d8c75b5e4b..46ae456c49 100644
--- a/build.gradle
+++ b/build.gradle
@@ -286,29 +286,30 @@ subprojects {
isCIBuild |= Boolean.valueOf(System.getenv("CI_BUILD"));
if (isCIBuild) {
- jvmArgs += [
- // Strictly serial
- // '-Djunit.jupiter.execution.parallel.enabled=false',
-
- // OR parallel on 2 threads
- '-Djunit.jupiter.execution.parallel.config.strategy=fixed',
- '-Djunit.jupiter.execution.parallel.config.fixed.parallelism=2'
- ]
- maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
- } else {
- jvmArgs += [
- '-Djunit.jupiter.execution.parallel.enabled=true',
- '-Djunit.jupiter.execution.parallel.config.strategy=dynamic',
+ System.out.println("Run with reduced parallelism for CI build");
+
+ jvmArgs += [
+ // Strictly serial
+ // '-Djunit.jupiter.execution.parallel.enabled=false',
+
+ // OR parallel on 2 threads
+ '-Djunit.jupiter.execution.parallel.config.strategy=fixed',
+ '-Djunit.jupiter.execution.parallel.config.fixed.parallelism=2'
+ ]
+ maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
+ } else {
+ jvmArgs += [
+ '-Djunit.jupiter.execution.parallel.enabled=true',
+ '-Djunit.jupiter.execution.parallel.config.strategy=dynamic',
// this setting breaks the test builds, do not use it!
- //'-Djunit.jupiter.execution.parallel.mode.default=concurrent'
- ]
-
- // Explicitly defining the maxParallelForks was always slower than not setting it
- // So we leave this to Gradle itself, which seems to be very smart
- // maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
- // maxParallelForks = Math.max( Runtime.runtime.availableProcessors() - 1, 1 )
+ //'-Djunit.jupiter.execution.parallel.mode.default=concurrent'
+ ]
+ // Explicitly defining the maxParallelForks was always slower than not setting it
+ // So we leave this to Gradle itself, which seems to be very smart
+ // maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
+ // maxParallelForks = Math.max( Runtime.runtime.availableProcessors() - 1, 1 )
}
// show standard out and standard error of the test JVM(s) on the console
@@ -324,11 +325,16 @@ subprojects {
doFirst {
if (JavaVersion.current() != JavaVersion.VERSION_1_8) {
- jvmArgs += [
- '-Dsun.reflect.debugModuleAccessChecks=true',
- '-Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true',
- '--illegal-access=warn',
+ // some options were removed in JDK 18
+ if (JavaVersion.current().ordinal() < JavaVersion.VERSION_18.ordinal()) {
+ jvmArgs += [
+ '--illegal-access=warn',
+ ]
+ } else {
+ System.out.println("Configuring for JDK 18 or higher")
+ }
+ jvmArgs += [
// see https://github.com/java9-modularity/gradle-modules-plugin/issues/97
// opposed to the recommendation there, it doesn't work to add ... to the dependencies
// testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.7.1'
@@ -336,9 +342,20 @@ subprojects {
'--add-exports','org.junit.platform.commons/org.junit.platform.commons.util=org.apache.poi.poi',
'--add-exports','org.junit.platform.commons/org.junit.platform.commons.util=ALL-UNNAMED',
'--add-exports','org.junit.platform.commons/org.junit.platform.commons.logging=ALL-UNNAMED',
+
+ '-Dsun.reflect.debugModuleAccessChecks=true',
+ '-Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true',
]
}
}
+
+ jacoco {
+ excludes = [
+ // this is necessary to make JaCoCo work with JDK 18 for now
+ 'sun/**',
+ 'javax/**',
+ ]
+ }
}
jacoco {
@@ -478,6 +495,11 @@ subprojects {
}
signing {
+ setRequired {
+ // signing is only required if this is a release version
+ // and the artifacts are to be published
+ gradle.taskGraph.allTasks.any { it instanceof PublishToMavenRepository }
+ }
sign publishing.publications.POI
}
signPOIPublication.dependsOn('generatePomFileForPOIPublication')