I've been getting the familiar warning:
WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by javax.media.j3d.JoglPipeline (file:/D:/jogl/j3dcore.jar) to method sun.awt.AppContext.getAppContext() I'm running Windows 10 on an Intel Core i5 9300H, with Intel UHD graphics 630. OpenGL version: 4.5.0 - Build 25.20.100.6617 > java --version java 15.0.1 2020-10-20 Java(TM) SE Runtime Environment (build 15.0.1+9-18) Java HotSpot(TM) 64-Bit Server VM (build 15.0.1+9-18, mixed mode, sharing) I'm using the latest JOGL (2.4) and Java 3D (1.7). My Java3D program runs, but there's an additional problem -- the 3D view is clipped, so that part of the scene is not displayed. This problem disappears when I switch back to Java 1.6, although I still get the reflective access warning. I've tried running JOGL 2.4. on its own with the JOGLQuad.java example, and it compiles and runs without any problems or warnings. Any suggestions on fixes? |
Administrator
|
Hello
Please provide a SSCCE so that we have a chance to reproduce your bug. As far as I remember, Java3D itself still uses some methods in sun.awt.
Julien Gouesse | Personal blog | Website
|
In reply to this post by Andrew2563
Hello Andrew2563 (and everybody)
I have exactly the same problem with the following versions:
WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.jogamp.java3d.JoglPipeline (file:/Users/lehuen/Desktop/CodeLab-MacOS-2101111334/ressources/libraries/java3d/j3dcore.jar) to method sun.awt.AppContext.getAppContext() WARNING: Please consider reporting this to the maintainers of org.jogamp.java3d.JoglPipeline WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Has anyone found a solution to avoid these messages? Jerome |
Good news, I found the solution! While exploring this forum, especially the thread entitled "Where is the latest version of Java3D" I discovered that there was a 1.7.0-final version of Java3D while I had stayed at a 1.7.0-pre1 version. This version fixes the mentioned bug, but also the
Thanks for maintaining Java3D! Jerome |
Administrator
|
A more recent version of Java3D is mentioned in my tutorial:
http://gouessej.wordpress.com/2012/08/01/java-3d-est-de-retour-java-3d-is-back/ The only problem is that the latest build doesn't contain the Java documentation of the public APIs but as they haven't changed as far as I know (Phil, can you confirm please?), you can still use the Java documentation of Java3D 1.7.0-pre1 with Java3D 1.7.1.
Julien Gouesse | Personal blog | Website
|
Using java3D 1.7.1 and JogAmp 2.4.0-rc-20210111, our program works great in both Windows and Linux,
except the following messages come out in all platforms: WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.jogamp.java3d.JoglPipeline$1 (file: /home/test/lib/j3dcore.jar) to method sun.awt.X11GraphicsDevice.getScreen() WARNING: Please consider reporting this to the maintainers of org.jogamp.java3d.JoglPipeline$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Using the option --illegal-access=debug, we get the following stacktrace: WARNING: Illegal reflective access by org.jogamp.java3d.JoglPipeline$1 (file:/home/test/lib/j3dcore.jar) to method sun.awt.X11GraphicsDevice.getScreen() at org.jogamp.java3d.JoglPipeline$1.run(JoglPipeline.java:8601) at java.base/java.security.AccessController.doPrivileged(Native Method) at org.jogamp.java3d.JoglPipeline.getScreen(JoglPipeline.java:8596) at org.jogamp.java3d.Screen3D.<init>(Screen3D.java:354) at org.jogamp.java3d.Canvas3D.<init>(Canvas3D.java:1123) at org.jogamp.java3d.Canvas3D.<init>(Canvas3D.java:1025) at org.jogamp.java3d.Canvas3D.<init>(Canvas3D.java:989) ... Thank you very much. |
The above message is removed by the following command option when booting java.
--add-exports=java.desktop/sun.awt=ALL-UNNAMED |
Hi,
Unfortunately java3D doesn't work at all with Java 17 (Windows) because "An illegal reflective access operation has occurred", which is not any more allowed. https://blogs.oracle.com/javamagazine/post/a-peek-into-java-17-continuing-the-drive-to-encapsulate-the-java-runtime-internals Any suggestion? |
Administrator
|
Have you used --add-opens as I suggested in my tutorial?
Julien Gouesse | Personal blog | Website
|
Free forum by Nabble | Edit this page |