Co-Authored-By: Claude Sonnet 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01B38FGKKam5SCGgwgduVAh3
41 lines
2.5 KiB
Plaintext
41 lines
2.5 KiB
Plaintext
# pom.xml sets maven.compiler.source/target/release to 25 (lanes/upgrade/pom.xml)
|
|
|
|
$ mvn package (build JDK 21)
|
|
[INFO] --- resources:3.3.1:resources (default-resources) @ upgrade-demo ---
|
|
[INFO] --- compiler:3.13.0:compile (default-compile) @ upgrade-demo ---
|
|
[INFO] Compiling 1 source file with javac [debug release 25] to target/classes
|
|
[INFO] BUILD FAILURE
|
|
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile (default-compile) on project upgrade-demo: Fatal error compiling: error: release version 25 not supported -> [Help 1]
|
|
|
|
$ mvn package (build JDK 25)
|
|
[INFO] --- resources:3.3.1:resources (default-resources) @ upgrade-demo ---
|
|
[INFO] --- compiler:3.13.0:compile (default-compile) @ upgrade-demo ---
|
|
[INFO] Compiling 1 source file with javac [debug release 25] to target/classes
|
|
[INFO] --- resources:3.3.1:testResources (default-testResources) @ upgrade-demo ---
|
|
[INFO] --- compiler:3.13.0:testCompile (default-testCompile) @ upgrade-demo ---
|
|
[INFO] --- surefire:3.2.5:test (default-test) @ upgrade-demo ---
|
|
[INFO] --- jar:3.4.1:jar (default-jar) @ upgrade-demo ---
|
|
[INFO] Building jar: <repo>/build/upgrade/mvn25/target/upgrade-demo-1.0.jar
|
|
[INFO] BUILD SUCCESS
|
|
|
|
$ mvn package (build JDK 27, still release 25)
|
|
[INFO] --- resources:3.3.1:resources (default-resources) @ upgrade-demo ---
|
|
[INFO] --- compiler:3.13.0:compile (default-compile) @ upgrade-demo ---
|
|
[INFO] Compiling 1 source file with javac [debug release 25] to target/classes
|
|
[INFO] --- resources:3.3.1:testResources (default-testResources) @ upgrade-demo ---
|
|
[INFO] --- compiler:3.13.0:testCompile (default-testCompile) @ upgrade-demo ---
|
|
[INFO] --- surefire:3.2.5:test (default-test) @ upgrade-demo ---
|
|
[INFO] --- jar:3.4.1:jar (default-jar) @ upgrade-demo ---
|
|
[INFO] Building jar: <repo>/build/upgrade/mvn27/target/upgrade-demo-1.0.jar
|
|
[INFO] BUILD SUCCESS
|
|
|
|
$ javap -v -cp target/classes demo.App | grep 'major version'
|
|
major version: 69
|
|
|
|
$ java -cp target/classes demo.App (JDK 25)
|
|
running on Java 25
|
|
|
|
$ java -cp target/classes demo.App (JDK 21: the class file is newer than the JVM)
|
|
Error: LinkageError occurred while loading main class demo.App
|
|
java.lang.UnsupportedClassVersionError: demo/App has been compiled by a more recent version of the Java Runtime (class file version 69.0), this version of the Java Runtime only recognizes class file versions up to 65.0
|