This is an automated email from the ASF dual-hosted git repository.

robertlazarski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git

commit dfacb5c702ead7a460d344aceeaa0ed0f1c2f4ef
Author: Robert Lazarski <[email protected]>
AuthorDate: Wed Sep 2 16:22:16 2026 -1000

    Pin the ant builds to a Java 17 release
    
    The javac tasks set no release, so classes took whatever the build JDK 
emitted
    and then outlived it in target/, where a later JDK too old to load them 
fails
    on a class-version error that looks nothing like its cause. Pin all 37 
tasks to
    maven.compiler.release, as the jaxrs test resources already did; the samples
    also default it to 17, since those are run standalone with plain ant.
    
    Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
---
 modules/codegen/build-wsdls.xml                              |  2 +-
 modules/kernel/test-resources/deployment/echo/build.xml      |  2 +-
 .../test-resources/deployment/invalidservice/build.xml       |  2 +-
 modules/kernel/test-resources/deployment/module1/build.xml   |  2 +-
 modules/kernel/test-resources/deployment/service1/build.xml  |  2 +-
 modules/kernel/test-resources/deployment/service2/build.xml  |  2 +-
 .../kernel/test-resources/deployment/serviceModule/build.xml |  2 +-
 modules/samples/advanced-rmi/build.xml                       | 10 ++++++++--
 modules/samples/build.xml                                    |  8 +++++++-
 modules/samples/faulthandling/build.xml                      | 10 ++++++++--
 modules/samples/googlespellcheck/build.xml                   |  8 +++++++-
 modules/samples/jaxws-version/build.xml                      |  8 +++++++-
 modules/samples/json/build.xml                               | 10 ++++++++--
 modules/samples/mex/build.xml                                |  8 +++++++-
 modules/samples/mtom/build.xml                               | 10 ++++++++--
 modules/samples/ping/build.xml                               |  8 +++++++-
 modules/samples/pojo/build.xml                               | 12 +++++++++---
 modules/samples/pojoguide/build.xml                          | 10 ++++++++--
 modules/samples/pojoguidespring/build.xml                    | 10 ++++++++--
 modules/samples/quickstart/build.xml                         |  8 +++++++-
 modules/samples/quickstartaxiom/build.xml                    |  8 +++++++-
 modules/samples/servicelifecycle/build.xml                   | 12 +++++++++---
 modules/samples/soapwithattachments/build.xml                |  8 +++++++-
 modules/samples/userguide/build.xml                          |  8 +++++++-
 modules/samples/version/build.xml                            |  8 +++++++-
 modules/samples/yahoojsonsearch/build.xml                    |  8 +++++++-
 modules/samples/yahoorestsearch/build.xml                    |  8 +++++++-
 27 files changed, 157 insertions(+), 37 deletions(-)

diff --git a/modules/codegen/build-wsdls.xml b/modules/codegen/build-wsdls.xml
index da5270844b..4b79bc7b89 100644
--- a/modules/codegen/build-wsdls.xml
+++ b/modules/codegen/build-wsdls.xml
@@ -45,7 +45,7 @@
                        <classpath location="${compiled.classes.dir}" />
                        <arg line="-ap -o ${wsdl.output.base.dir}/version -d 
none -s -u -uri test-resources/wsdls/Version.wsdl" />
                </java>
-               <javac fork="yes" destdir="target/test-classes" debug="on" 
includeantruntime="false">
+               <javac fork="yes" destdir="target/test-classes" debug="on" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="maven.test.classpath" />
                        <classpath location="${compiled.classes.dir}" />
                        <src path="${wsdl.output.base.dir}/version" />
diff --git a/modules/kernel/test-resources/deployment/echo/build.xml 
b/modules/kernel/test-resources/deployment/echo/build.xml
index 81a305c813..e83b32e376 100644
--- a/modules/kernel/test-resources/deployment/echo/build.xml
+++ b/modules/kernel/test-resources/deployment/echo/build.xml
@@ -36,7 +36,7 @@
     <target name="compile" depends="init" unless="jars.uptodate">
         <mkdir dir="${build.classes}"/>
         <mkdir dir="${build.lib}"/>
-        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false">
+        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath refid="axis.test.classpath"/>
             <src path="${src}"/>
         </javac>
diff --git a/modules/kernel/test-resources/deployment/invalidservice/build.xml 
b/modules/kernel/test-resources/deployment/invalidservice/build.xml
index 729bfd915a..801ad07aad 100644
--- a/modules/kernel/test-resources/deployment/invalidservice/build.xml
+++ b/modules/kernel/test-resources/deployment/invalidservice/build.xml
@@ -37,7 +37,7 @@
     <target name="compile" depends="init" unless="jars.uptodate">
         <mkdir dir="${build.classes}"/>
         <mkdir dir="${build.lib}"/>
-        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false">
+        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath refid="axis.test.classpath"/>
             <src path="${src}"/>
         </javac>
diff --git a/modules/kernel/test-resources/deployment/module1/build.xml 
b/modules/kernel/test-resources/deployment/module1/build.xml
index fcffe826b5..589dd34587 100644
--- a/modules/kernel/test-resources/deployment/module1/build.xml
+++ b/modules/kernel/test-resources/deployment/module1/build.xml
@@ -36,7 +36,7 @@
     <target name="compile" depends="init" unless="jars.uptodate">
         <mkdir dir="${build.classes}"/>
         <mkdir dir="${build.lib}"/>
-        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false">
+        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath refid="axis.test.classpath"/>
             <src path="${src}"/>
         </javac>
diff --git a/modules/kernel/test-resources/deployment/service1/build.xml 
b/modules/kernel/test-resources/deployment/service1/build.xml
index de52ae598b..748cdd88f8 100644
--- a/modules/kernel/test-resources/deployment/service1/build.xml
+++ b/modules/kernel/test-resources/deployment/service1/build.xml
@@ -37,7 +37,7 @@
     <target name="compile" depends="init" unless="jars.uptodate">
         <mkdir dir="${build.classes}"/>
         <mkdir dir="${build.lib}"/>
-        <javac destdir="${build.classes}" debug="on" includeantruntime="false">
+        <javac destdir="${build.classes}" debug="on" includeantruntime="false" 
release="${maven.compiler.release}">
             <classpath refid="axis.test.classpath"/>
             <src path="${src}"/>
         </javac>
diff --git a/modules/kernel/test-resources/deployment/service2/build.xml 
b/modules/kernel/test-resources/deployment/service2/build.xml
index cce094cd4b..29156f7dd5 100644
--- a/modules/kernel/test-resources/deployment/service2/build.xml
+++ b/modules/kernel/test-resources/deployment/service2/build.xml
@@ -36,7 +36,7 @@
     <target name="compile" depends="init" unless="jars.uptodate">
         <mkdir dir="${build.classes}"/>
         <mkdir dir="${build.lib}"/>
-        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false">
+        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath refid="axis.test.classpath"/>
             <src path="${src}"/>
         </javac>
diff --git a/modules/kernel/test-resources/deployment/serviceModule/build.xml 
b/modules/kernel/test-resources/deployment/serviceModule/build.xml
index b2be9af5f8..5570d2b982 100644
--- a/modules/kernel/test-resources/deployment/serviceModule/build.xml
+++ b/modules/kernel/test-resources/deployment/serviceModule/build.xml
@@ -36,7 +36,7 @@
     <target name="compile" depends="init" unless="jars.uptodate">
         <mkdir dir="${build.classes}"/>
         <mkdir dir="${build.lib}"/>
-        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false">
+        <javac destdir="${build.classes}" debug="on" fork="true" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath refid="axis.test.classpath"/>
             <src path="${src}"/>
         </javac>
diff --git a/modules/samples/advanced-rmi/build.xml 
b/modules/samples/advanced-rmi/build.xml
index 1fb9f9223d..370af65ded 100644
--- a/modules/samples/advanced-rmi/build.xml
+++ b/modules/samples/advanced-rmi/build.xml
@@ -19,6 +19,12 @@
 
 <project name="sample_service" default="generate_service" basedir=".">
 
+        <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+             so the class files load on every JDK the project supports and 
stale
+             output cannot outlive a JDK change. A value inherited from the 
Maven
+             build wins over this default. -->
+        <property name="maven.compiler.release" value="17"/>
+
     <target name="init">
         <property name="sample_home" value="${basedir}"/>
         <property name="classes_dir" value="${sample_home}/classes"/>
@@ -51,7 +57,7 @@
         <mkdir dir="${deploy_dir}/META-INF"/>
 
         <!-- compiling the classes -->
-        <javac  destdir="${deploy_dir}" srcdir="${src_dir}" debug="on" 
includeantruntime="false">
+        <javac  destdir="${deploy_dir}" srcdir="${src_dir}" debug="on" 
includeantruntime="false" release="${maven.compiler.release}">
             <exclude name="**/client/*"/>
             <classpath>
                 <fileset dir="${lib_dir}" includes="*.jar"/>
@@ -77,7 +83,7 @@
         <mkdir dir="${dist_dir}"/>
 
         <!-- compiling the classes -->
-        <javac  destdir="${classes_dir}" srcdir="${src_dir}" debug="on" 
includeantruntime="false">
+        <javac  destdir="${classes_dir}" srcdir="${src_dir}" debug="on" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath>
                 <fileset dir="${lib_dir}" includes="*.jar"/>
             </classpath>
diff --git a/modules/samples/build.xml b/modules/samples/build.xml
index 78c7d377ad..69bcd591ea 100644
--- a/modules/samples/build.xml
+++ b/modules/samples/build.xml
@@ -29,6 +29,12 @@
                                                                      
      ====================================================================== -->
 <project name="samples" basedir="." default="compile">
+
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
     <property name="src.dir" value="src"/>
     <property name="build.dir" value="build"/>
     <property name="lib.dir" value="${build.dir}/lib"/>
@@ -86,7 +92,7 @@
     </target>
 
     <target name="compile" depends="clean,createDir">
-        <javac srcdir="${src.dir}" destdir="${classes.dir}" 
includeantruntime="false">
+        <javac srcdir="${src.dir}" destdir="${classes.dir}" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath refid="classpath.library"/>
         </javac>
         <jar destfile="${lib.dir}/${ant.project.name}-all.jar">
diff --git a/modules/samples/faulthandling/build.xml 
b/modules/samples/faulthandling/build.xml
index 2ecde4b583..cb5486c441 100644
--- a/modules/samples/faulthandling/build.xml
+++ b/modules/samples/faulthandling/build.xml
@@ -19,6 +19,12 @@
 
 <project name="faulthandling" basedir="." default="generate.service">
 
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
+
     <property name="wsdl.uri" value="bank.wsdl"/>
     <property name="service.target" value="build/service"/>
     <property name="client.target" value="build/client"/>
@@ -81,7 +87,7 @@
 
         <!--First let's compile the classes-->
         <javac debug="on" memoryMaximumSize="256m" memoryInitialSize="256m" 
fork="true"
-               destdir="${service.target}/classes" 
srcdir="${service.target}/src" includeantruntime="false">
+               destdir="${service.target}/classes" 
srcdir="${service.target}/src" includeantruntime="false" 
release="${maven.compiler.release}">
             <classpath>
                 <fileset dir="../../../lib">
                     <include name="*.jar"/>
@@ -125,7 +131,7 @@
 
         <!--now compile the stub classes-->
         <javac debug="on" memoryMaximumSize="256m" memoryInitialSize="256m" 
fork="true"
-               destdir="${client.target}/classes" includeantruntime="false">
+               destdir="${client.target}/classes" includeantruntime="false" 
release="${maven.compiler.release}">
             <src path="${client.target}/src"/>
             <classpath>
                 <fileset dir="../../../lib">
diff --git a/modules/samples/googlespellcheck/build.xml 
b/modules/samples/googlespellcheck/build.xml
index 815cb66931..241bdf6a44 100644
--- a/modules/samples/googlespellcheck/build.xml
+++ b/modules/samples/googlespellcheck/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="googlespellcheck" basedir="." default="run.client">
+
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
        
        <property name="wsdl" 
value="http://tools.wso2.net:12001/axis2/services/SimplifiedSpellCheck?wsdl"; />
        
@@ -90,7 +96,7 @@
        
        <target name="client.compile">
                
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
        
diff --git a/modules/samples/jaxws-version/build.xml 
b/modules/samples/jaxws-version/build.xml
index 6943654c8d..94058af41f 100644
--- a/modules/samples/jaxws-version/build.xml
+++ b/modules/samples/jaxws-version/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="version" basedir="." default="generate.service">
+
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
        
        <property name="dest.dir" value="build" />
        
@@ -50,7 +56,7 @@
        
        <target name="generate.service" depends="clean,prepare">
                
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/jaxws/**" includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/jaxws/**" includeantruntime="false" 
release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
                
diff --git a/modules/samples/json/build.xml b/modules/samples/json/build.xml
index 3f081739b1..90ad58d73f 100644
--- a/modules/samples/json/build.xml
+++ b/modules/samples/json/build.xml
@@ -19,6 +19,12 @@
 
 <project name="json" basedir="." default="generate.service">
 
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
+
     <property name="dest.dir" value="build" />
 
     <property name="dest.dir.classes" value="${dest.dir}/classes" />
@@ -52,7 +58,7 @@
     <target name="generate.service" depends="clean,prepare">
         <copy file="src/META-INF/services.xml" 
tofile="${dest.dir.classes}/META-INF/services.xml" overwrite="true" />
 
-        <javac srcdir="src" destdir="${dest.dir.classes}" fork="true" 
includeantruntime="false">
+        <javac srcdir="src" destdir="${dest.dir.classes}" fork="true" 
includeantruntime="false" release="${maven.compiler.release}">
             <classpath refid="axis.classpath" />
         </javac>
 
@@ -63,7 +69,7 @@
     </target>
 
     <target name="client.compile">
-        <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample.json.client/**" fork="true" includeantruntime="false">
+        <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample.json.client/**" fork="true" includeantruntime="false" 
release="${maven.compiler.release}">
             <classpath refid="axis.classpath"/>
         </javac>
     </target>
diff --git a/modules/samples/mex/build.xml b/modules/samples/mex/build.xml
index 71cc0b3394..c14f11162d 100644
--- a/modules/samples/mex/build.xml
+++ b/modules/samples/mex/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="mex" default="generate.service">
+
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
     <property name="mainDir" value="../.."/>
     <property name="classes.dir" value="build/classes"/>
     <path id="axis.classpath">
@@ -33,7 +39,7 @@
     
     <target name="compile">
                <mkdir dir="${classes.dir}" />
-               <javac srcdir="src" destdir="${classes.dir}" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${classes.dir}" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="axis.classpath" />
                </javac>
                <jar destfile="build/userguideMex.jar">
diff --git a/modules/samples/mtom/build.xml b/modules/samples/mtom/build.xml
index 73fa68d7a0..266731066b 100755
--- a/modules/samples/mtom/build.xml
+++ b/modules/samples/mtom/build.xml
@@ -19,6 +19,12 @@
 
 <project name="mtom" basedir="." default="generate.service">
 
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
+
        <property environment="env" />
        <property name="build.dir" value="${basedir}/build" />
        <property name="client.dir" value="${build.dir}/client" />
@@ -86,7 +92,7 @@
 
                <mkdir dir="${client.classes.dir}" />
                <!-- Compile client -->
-               <javac srcdir="${client.dir}/src" 
destdir="${client.classes.dir}" fork="true" includeantruntime="false">
+               <javac srcdir="${client.dir}/src" 
destdir="${client.classes.dir}" fork="true" includeantruntime="false" 
release="${maven.compiler.release}">
                        <classpath refid="class.path" />
                </javac>
     </target>  
@@ -109,7 +115,7 @@
        </target>
        <target  name="jar.server">
                <mkdir dir="${service.dir}/classes" />
-               <javac debug="on" memoryMaximumSize="256m" 
memoryInitialSize="256m" fork="true" destdir="${service.dir}/classes" 
srcdir="${service.dir}/src"  includeantruntime="false">
+               <javac debug="on" memoryMaximumSize="256m" 
memoryInitialSize="256m" fork="true" destdir="${service.dir}/classes" 
srcdir="${service.dir}/src"  includeantruntime="false" 
release="${maven.compiler.release}">
                <classpath refid="class.path"/>
                </javac>
 
diff --git a/modules/samples/ping/build.xml b/modules/samples/ping/build.xml
index 119bfec073..064bc42d46 100644
--- a/modules/samples/ping/build.xml
+++ b/modules/samples/ping/build.xml
@@ -19,6 +19,12 @@
 
 <project name="ping" basedir="." default="generate.service">
 
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
+
     <property environment="env"/>
     <property name="AXIS2_HOME" value="../../"/>
 
@@ -46,7 +52,7 @@
                destdir="${build.dir}/classes"
                srcdir="${basedir}/src"
                classpathref="axis2.classpath"
-               includeantruntime="false">
+               includeantruntime="false" release="${maven.compiler.release}">
         </javac>
     </target>
 
diff --git a/modules/samples/pojo/build.xml b/modules/samples/pojo/build.xml
index bbf7e7566e..380160ae30 100644
--- a/modules/samples/pojo/build.xml
+++ b/modules/samples/pojo/build.xml
@@ -19,6 +19,12 @@
 
 <project name="pojo" basedir="." default="generate.service">
 
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
+
        <property name="dest.dir" value="build" />
 
        <property name="dest.dir.classes" value="${dest.dir}/classes" />
@@ -65,7 +71,7 @@
 
                <copy file="src/META-INF/services.xml" 
tofile="${dest.dir.classes}/META-INF/services.xml" overwrite="true" />
 
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/addressbook/service/**,sample/addressbook/entry/**" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/addressbook/service/**,sample/addressbook/entry/**" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
 
@@ -88,7 +94,7 @@
        </target>
 
        <target name="rpc.client.compile">
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/addressbook/rpcclient/**,sample/addressbook/entry/**" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/addressbook/rpcclient/**,sample/addressbook/entry/**" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
        </target>
@@ -148,7 +154,7 @@
        </target>
 
        <target name="adb.client.compile">
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/addressbook/adbclient/**,sample/addressbook/stub/**" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/addressbook/adbclient/**,sample/addressbook/stub/**" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
        </target>
diff --git a/modules/samples/pojoguide/build.xml 
b/modules/samples/pojoguide/build.xml
index 08b2ab143c..a2f8a2b085 100644
--- a/modules/samples/pojoguide/build.xml
+++ b/modules/samples/pojoguide/build.xml
@@ -19,6 +19,12 @@
 
 <project name="pojoguide" basedir="." default="generate.service">
 
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
+
        <property name="service.name" value="WeatherService" />
        <property name="dest.dir" value="build" />
        <property name="dest.dir.classes" value="${dest.dir}/${service.name}" />
@@ -57,7 +63,7 @@
 
                <copy file="src/META-INF/services.xml" 
tofile="${dest.dir.classes}/META-INF/services.xml" overwrite="true" />
 
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/pojo/service/**,sample/pojo/data/**" includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/pojo/service/**,sample/pojo/data/**" includeantruntime="false" 
release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
                
@@ -78,7 +84,7 @@
        </target>
 
        <target name="rpc.client.compile">
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/pojo/rpcclient/**,sample/pojo/data/**" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/pojo/rpcclient/**,sample/pojo/data/**" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
        </target>
diff --git a/modules/samples/pojoguidespring/build.xml 
b/modules/samples/pojoguidespring/build.xml
index b44ba84c18..56d01be392 100644
--- a/modules/samples/pojoguidespring/build.xml
+++ b/modules/samples/pojoguidespring/build.xml
@@ -19,6 +19,12 @@
 
 <project name="pojoguidespring" basedir="." default="generate.service">
 
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
+
        <property environment="env" />
        <property name="service-name" value="WeatherSpringService" />
        <property name="dest.dir" value="target" />
@@ -77,7 +83,7 @@
                <copy file="src/META-INF/services.xml" 
tofile="${dest.dir.classes}/META-INF/services.xml" overwrite="true" />
                <copy file="src/applicationContext.xml" 
tofile="${dest.dir.classes}/applicationContext.xml" overwrite="true" />
 
-               <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/**" includeantruntime="false">
+               <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/**" includeantruntime="false" 
release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
 
@@ -92,7 +98,7 @@
        </target>
 
        <target name="rpc.client.compile" depends="prepare">
-               <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="client/**" includeantruntime="false">
+               <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="client/**" includeantruntime="false" 
release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
        </target>
diff --git a/modules/samples/quickstart/build.xml 
b/modules/samples/quickstart/build.xml
index c0aaeb6b47..369de6fc01 100644
--- a/modules/samples/quickstart/build.xml
+++ b/modules/samples/quickstart/build.xml
@@ -19,6 +19,12 @@
 
 <project name="quickstart" basedir="." default="generate.service">
 
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
+
     <property environment="env"/>
     <property name="AXIS2_HOME" value="../.."/>
 
@@ -40,7 +46,7 @@
                destdir="${build.dir}/classes" 
                srcdir="${basedir}/src"
                classpathref="axis2.classpath"
-               includeantruntime="false">
+               includeantruntime="false" release="${maven.compiler.release}">
         </javac>
     </target>
 
diff --git a/modules/samples/quickstartaxiom/build.xml 
b/modules/samples/quickstartaxiom/build.xml
index 8bb46b0ca2..facf238a41 100644
--- a/modules/samples/quickstartaxiom/build.xml
+++ b/modules/samples/quickstartaxiom/build.xml
@@ -19,6 +19,12 @@
 
 <project name="quickstartaxiom" basedir="." default="generate.service">
 
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
+
     <property environment="env"/>
     <property name="AXIS2_HOME" value="../.."/>
 
@@ -46,7 +52,7 @@
                destdir="${build.dir}/classes" 
                srcdir="${basedir}/src"
                classpathref="axis2.classpath"
-               includeantruntime="false">
+               includeantruntime="false" release="${maven.compiler.release}">
         </javac>
     </target>
 
diff --git a/modules/samples/servicelifecycle/build.xml 
b/modules/samples/servicelifecycle/build.xml
index 978cd19651..72fb76495c 100644
--- a/modules/samples/servicelifecycle/build.xml
+++ b/modules/samples/servicelifecycle/build.xml
@@ -19,6 +19,12 @@
 
 <project name="servicelifecycle" basedir="." default="build">
 
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
+
     <property environment="env"/>
     <property name="service-name" value="Library.aar"/>
     <property name="dest.dir" value="target"/>
@@ -63,7 +69,7 @@
               tofile="${dest.dir.classes}/META-INF/services.xml"
               overwrite="true"/>
 
-        <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/**" includeantruntime="false">
+        <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/**" includeantruntime="false" 
release="${maven.compiler.release}">
             <classpath refid="build.class.path"/>
         </javac>
 
@@ -83,7 +89,7 @@
               tofile="${dest.dir.classes}/META-INF/services.xml"
               overwrite="true"/>
 
-        <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/**" includeantruntime="false">
+        <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/**" includeantruntime="false" 
release="${maven.compiler.release}">
             <classpath refid="build.class.path"/>
         </javac>
 
@@ -97,7 +103,7 @@
     <target name="run.client" depends="prepare">
         <mkdir dir="${dest.dir}"/>
         <mkdir dir="${dest.dir.classes}"/>
-        <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="client/**" includeantruntime="false">
+        <javac debug="on" srcdir="src" destdir="${dest.dir.classes}" 
includes="client/**" includeantruntime="false" 
release="${maven.compiler.release}">
             <classpath>
                 <fileset dir="../../lib">
                     <include name="*.jar"/>
diff --git a/modules/samples/soapwithattachments/build.xml 
b/modules/samples/soapwithattachments/build.xml
index 33be43e7b5..9fe87e292e 100644
--- a/modules/samples/soapwithattachments/build.xml
+++ b/modules/samples/soapwithattachments/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="SOAPWithAttachmentsSample" default="generate.service">
+
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
        <property environment="env" />
        <property name="axis2.home" value="../../" />
        <property name="axis2.repo" value="${axis2.home}/repository" />
@@ -45,7 +51,7 @@
        <target name="compile">
                <mkdir dir="${client.classes.dir}" />
                <!-- Compile client -->
-               <javac debug="on"  srcdir="src" destdir="${client.classes.dir}" 
includeantruntime="false">
+               <javac debug="on"  srcdir="src" destdir="${client.classes.dir}" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="axis.classpath" />
                </javac>
        </target>
diff --git a/modules/samples/userguide/build.xml 
b/modules/samples/userguide/build.xml
index 634c20f76a..f788f4ce23 100644
--- a/modules/samples/userguide/build.xml
+++ b/modules/samples/userguide/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="userguide" default="generate.service">
+
+    <!-- Compile for a fixed release rather than whatever JDK runs the build,
+         so the class files load on every JDK the project supports and stale
+         output cannot outlive a JDK change. A value inherited from the Maven
+         build wins over this default. -->
+    <property name="maven.compiler.release" value="17"/>
     <property name="mainDir" value="../.."/>
     <property name="classes.dir" value="build/classes"/>
     <path id="axis.classpath">
@@ -35,7 +41,7 @@
     
     <target name="compile">
                <mkdir dir="${classes.dir}" />
-               <javac srcdir="src" destdir="${classes.dir}" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${classes.dir}" 
includeantruntime="false" release="${maven.compiler.release}">
                         <exclude name="**/springboot/**/*.java" />
                        <classpath refid="axis.classpath" />
                </javac>
diff --git a/modules/samples/version/build.xml 
b/modules/samples/version/build.xml
index cf2514a7f2..a820571423 100644
--- a/modules/samples/version/build.xml
+++ b/modules/samples/version/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="version" basedir="." default="generate.service">
+
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
        
        <property name="dest.dir" value="build" />
        
@@ -51,7 +57,7 @@
                
                <copy file="src/sample/axisversion/META-INF/services.xml" 
tofile="${dest.dir.classes}/META-INF/services.xml" overwrite="true" />
                
-               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/axisversion/**" includeantruntime="false">
+               <javac srcdir="src" destdir="${dest.dir.classes}" 
includes="sample/axisversion/**" includeantruntime="false" 
release="${maven.compiler.release}">
                        <classpath refid="build.class.path" />
                </javac>
                
diff --git a/modules/samples/yahoojsonsearch/build.xml 
b/modules/samples/yahoojsonsearch/build.xml
index c478d4e111..f4132dc4e3 100644
--- a/modules/samples/yahoojsonsearch/build.xml
+++ b/modules/samples/yahoojsonsearch/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="YahooJSONSearchSample" default="run.client">
+
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
        <property environment="env" />
        <property name="axis2.home" value="../../" />
        <property name="axis2.repo" value="${axis2.home}/repository" />
@@ -33,7 +39,7 @@
        <target name="compile">
                <mkdir dir="${client.classes.dir}" />
                <!-- Compile client -->
-               <javac srcdir="src" destdir="${client.classes.dir}" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${client.classes.dir}" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="axis.classpath" />
                </javac>
                <jar destfile="${build.dir}/yahooJSONSearch.jar">
diff --git a/modules/samples/yahoorestsearch/build.xml 
b/modules/samples/yahoorestsearch/build.xml
index 43822f236b..43b0afa94f 100755
--- a/modules/samples/yahoorestsearch/build.xml
+++ b/modules/samples/yahoorestsearch/build.xml
@@ -18,6 +18,12 @@
   -->
 
 <project name="YahooRestSearchSample" default="run.client">
+
+       <!-- Compile for a fixed release rather than whatever JDK runs the 
build,
+            so the class files load on every JDK the project supports and stale
+            output cannot outlive a JDK change. A value inherited from the 
Maven
+            build wins over this default. -->
+       <property name="maven.compiler.release" value="17"/>
        <property environment="env" />
        <property name="axis2.home" value="../../" />
        <property name="axis2.repo" value="${axis2.home}/repository" />
@@ -33,7 +39,7 @@
        <target name="compile">
                <mkdir dir="${client.classes.dir}" />
                <!-- Compile client -->
-               <javac srcdir="src" destdir="${client.classes.dir}" 
includeantruntime="false">
+               <javac srcdir="src" destdir="${client.classes.dir}" 
includeantruntime="false" release="${maven.compiler.release}">
                        <classpath refid="axis.classpath" />
                </javac>
                <jar destfile="${build.dir}/yahooRESTSearch.jar">

Reply via email to