diff --git a/Jenkinsfile b/Jenkinsfile
index a790af9cd9e..b84c480d8dd 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -58,16 +58,22 @@ pipeline {
stage('Maven/Tycho Build & Test') {
environment {
MAVEN_OPTS = "-Xmx1500m"
- // set all Java versions needed by our toolchains.xml
- JAVA_HOME_17_X64 = tool(type:'jdk', name:'temurin-jdk17-latest')
- JAVA_HOME_21_X64 = tool(type:'jdk', name:'temurin-jdk21-latest')
+ // Set all Java version that can be discovered/selected by maven-toolchains-plugin
+ JAVA_17_HOME = tool(type:'jdk', name:'temurin-jdk17-latest')
+ JAVA_21_HOME = tool(type:'jdk', name:'temurin-jdk21-latest')
}
steps {
xvnc(useXauthority: true) {
sh """
+ jdkEnvVar='JAVA_${javaVersion()}_HOME'
+ if [ "${JAVA_HOME}" = "\${JAVA_${javaVersion()}_HOME}" ]; then
+ # Workaround for https://github.com/apache/maven-toolchains-plugin/pull/148
+ # clear the structured variable and require JAVA_HOME instead
+ export JAVA_${javaVersion()}_HOME=''
+ jdkEnvVar='JAVA_HOME'
+ fi
./full-build.sh --tp=${selectedTargetPlatform()} \
- ${javaVersion() == 17 ? '--toolchains releng/toolchains.xml -Pstrict-jdk-17' : ''} \
- ${javaVersion() == 21 ? '-Pstrict-jdk-21' : ''}
+ -Pstrict-jdk-${javaVersion()} -Dtoolchain.jdk.env=\${jdkEnvVar}
"""
}
}// END steps
diff --git a/pom.xml b/pom.xml
index 36ddfcec8ad..e03b9dbb51e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -127,9 +127,10 @@
ISO-8859-1
4.0.13
- 17
- 17
17
+ ${maven.compiler.release}
+ ${maven.compiler.release}
+
false
3.3.0
@@ -694,35 +695,15 @@
strict-jdk-17
-
-
-
- org.apache.maven.plugins
- maven-toolchains-plugin
-
-
-
- toolchain
-
-
-
-
-
-
-
- 17
-
-
-
-
-
-
+
+ 17
+
+ [17,18)
+
+
strict-jdk-21
-
21
-
- 21
+ [21,22)
@@ -766,7 +744,7 @@
org.apache.maven.plugins
maven-toolchains-plugin
- 3.1.0
+ 3.2.0
org.apache.maven.plugins
@@ -1005,6 +983,17 @@
${tycho-version}
true
+
+ org.apache.maven.plugins
+ maven-toolchains-plugin
+
+
+
+ select-jdk-toolchain
+
+
+
+
org.apache.maven.plugins
maven-enforcer-plugin
diff --git a/releng/toolchains.xml b/releng/toolchains.xml
deleted file mode 100644
index f23efad0afc..00000000000
--- a/releng/toolchains.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- jdk
-
- JavaSE-17
- 17
-
-
- ${env.JAVA_HOME_17_X64}
-
-
-
- jdk
-
- JavaSE-21
- 21
-
-
- ${env.JAVA_HOME_21_X64}
-
-
-