Login  Register

Re: Jogl/Jogamp on Java 8 building from source

Posted by Douglas Lyon on Dec 27, 2017; 2:36pm
URL: https://forum.jogamp.org/Jogl-Jogamp-on-Java-9-tp4038012p4038444.html

Thank you for your prompt response.
You may see: "-Dj3d.allowNullGraphicsConfig" in the jvm invocation,
/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/bin/java -Dj3d.allowNullGraphicsConfig
 Is that right?
You write:
"Either GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice() is null in your configuration or GraphicsEnvironment.getLocalGraphicsEnvironment().
getDefaultScreenDevice().getBestConfiguration(GraphicsConfigTemplate) returns null"

Interestingly, neither assertion is bearing fruit. I shall attempt to print the references prior to the death of jvm so that you may see what I am seeing. First, the code:
public static void main(String[] args) {
        GraphicsEnvironment
                localGraphicsEnvironment
                = GraphicsEnvironment.getLocalGraphicsEnvironment();
        GraphicsDevice gd=localGraphicsEnvironment
                           .getDefaultScreenDevice();
        System.out.println
                ("GraphicsDevice" +
                 ":"+gd);
        GraphicsConfigTemplate3D
                template =  new GraphicsConfigTemplate3D();
//is this an OK way to create a template? Should I turn off some antialiasing features?
//or assert off-screen rendering?
        System.out.println
                ("template" +
                 ":"+template);
        //Here is where we kill the jvm:
        gd.getBestConfiguration(template);
    }
I hope I got the template code right....now for the output:
/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/bin/java -Dj3d.allowNullGraphicsConfig -javaagent:/Applications/idea.app/Contents/lib/idea_rt.jar=53454:/Applications/idea.app/Contents/bin -Dfile.encoding=UTF-8 -classpath /Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home/lib/tools.jar:/Users/lyon/current/java/testHello/out/production/testHello:/Users/lyon/current/java/testHello/jars/jogamp-fat.jar com.docjava.Main
GraphicsDevice:sun.awt.CGraphicsDevice@4783da3f
template:redSize : 2, greenSize : 2, blueSize : 2, depthSize : 16, doubleBuffer : REQUIRED, sceneAntialiasing : UNNECESSARY, stereo : UNNECESSARY
Java 3D: null graphics configs disabled
java.lang.RuntimeException: Unable to initialize JAWT
        at com.sun.opengl.impl.JAWT$1.run(JAWT.java:100)
        at java.security.AccessController.doPrivileged(Native Method)
        at com.sun.opengl.impl.JAWT.getJAWT(JAWT.java:95)
        at com.sun.opengl.impl.macosx.MacOSXOnscreenGLDrawable.lockSurface(MacOSXOnscreenGLDrawable.java:144)
        at com.sun.opengl.impl.macosx.MacOSXOnscreenGLContext.makeCurrentImpl(MacOSXOnscreenGLContext.java:57)
        at com.sun.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:134)
        at javax.media.j3d.JoglPipeline$QueryCanvas.doQuery(JoglPipeline.java:9049)
        at javax.media.j3d.JoglPipeline.getBestConfiguration(JoglPipeline.java:8797)
        at javax.media.j3d.Renderer.doWork(Renderer.java:514)
        at javax.media.j3d.J3dThread.run(J3dThread.java:275)

DefaultRenderingErrorListener.errorOccurred:
GRAPHICS_CONFIG_ERROR: Renderer: Error in GraphicsConfigTemplate3D.getBestConfiguration()
graphicsDevice = sun.awt.CGraphicsDevice@4783da3f

Process finished with exit code 1

Is this some sort of awt error?
Sorry I am feeling really stuck here.

Thank you for your help!
Regards,
 - Doug