Login  Register

Re: Java17 compatibility error ??

Posted by andrewk1972 on Oct 05, 2024; 3:51am
URL: https://forum.jogamp.org/Java17-compatibility-error-tp4043006p4043544.html

Thanks for your response Julien.

The main class is Demo.LightingExample
The program arguments are blank.
The VM arguments are ‐‐add-opens=java.desktop.sun.awt=ALL-UNNAMED

Here is my full command line generated by Eclipse (with the —add-opens option):
/Library/Java/JavaVirtualMachines/jdk-23.jdk/Contents/Home/bin/java ‐‐add-opens=java.desktop.sun.awt=ALL-UNNAMED -Dfile.encoding=UTF-8 -Dstdout.encoding=UTF-8 -Dstderr.encoding=UTF-8 -p /Library/Java/Extensions -classpath /Users/andrew/Documents/eclipse-workspace/3D Stuff/bin:/Users/andrew/Miscellaneous JARS/vrml97.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/bin:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/gluegen-rt.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/gluegen-rt-natives-macosx-universal.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/jogl-all.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/jogl-all-natives-macosx-universal.jar:/Users/andrew/Documents/eclipse-workspace/Java3D/bin:/Users/andrew/Documents/eclipse-workspace/Java3D/lib/java3d-core.jar:/Users/andrew/Documents/eclipse-workspace/Java3D/lib/java3d-utils.jar:/Users/andrew/Documents/eclipse-workspace/Java3D/lib/vecmath.jar Demo.LightingExample

This raises the ClassNotFoundException when executing both in Eclipse and from the command line.
Error: Could not find or load main class ‐‐add-opens=java.desktop.sun.awt=ALL-UNNAMED
Caused by: java.lang.ClassNotFoundException: ‐‐add-opens=java.desktop.sun.awt=ALL-UNNAMED

If I don't include the —add-opens option, the program appears to run (including the 3D components) but I get several exceptions:
AppContextInfo(Bug 1004) InaccessibleObjectException: Unable to make public static sun.awt.AppContext sun.awt.AppContext.getAppContext() accessible: module java.desktop does not "exports sun.awt" to unnamed module @eb21112 on thread J3D-Renderer-1

Here is the command line without the —add-opens option:
/Library/Java/JavaVirtualMachines/jdk-23.jdk/Contents/Home/bin/java -Dfile.encoding=UTF-8 -Dstdout.encoding=UTF-8 -Dstderr.encoding=UTF-8 -p /Library/Java/Extensions -classpath /Users/andrew/Documents/eclipse-workspace/3D Stuff/bin:/Users/andrew/Miscellaneous JARS/vrml97.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/bin:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/gluegen-rt.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/gluegen-rt-natives-macosx-universal.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/jogl-all.jar:/Users/andrew/Documents/eclipse-workspace/JOGL/lib/jogl-all-natives-macosx-universal.jar:/Users/andrew/Documents/eclipse-workspace/Java3D/bin:/Users/andrew/Documents/eclipse-workspace/Java3D/lib/java3d-core.jar:/Users/andrew/Documents/eclipse-workspace/Java3D/lib/java3d-utils.jar:/Users/andrew/Documents/eclipse-workspace/Java3D/lib/vecmath.jar Demo.LightingExample

Note that when I execute in the command line I have to add " marks around classpath...

Any idea what's going on?