jMonkeyBuilder: Bugs

I’m not exactly sure how to do that. Does the packaged build use the default system JVM or has it it’s own JVM packed? If so, how could I use a custom JVM to launch it?

.deb package has its own JRE, but if you look at the folder /opt/jMonkeyBuilder/app you can see the root jat which you can launch from a terminal :wink:

Ok, I found it :smiley:
But somehow I am too stupid to include everything I need for JavaFX in the classpath, I always get

Error: JavaFX runtime components are missing, and are required to run this application

Right now I don’t know what else to try.

you need to install open-jfx package, because openjdk doesn’t provide it.

Yeah, I have that installed. I guess that I broke something with installing multiple JDKs. I will check either later today or on monday on a (jdk-wise) fresh system.

but at this moment, it seems it’s a lwjgl3 issue on java9+, I think you can create the issue here:

bacause you can reproduce this problem on simple jME example on java9+ and you can’t reproduce it on java 8.

Hello,

In version 1.8 of JMB, when I want to convert a gltf to j3o file, the application crashes with the following exception:

Exception in thread "BackgroundEditorTaskExec utor_4" java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
at com.jme3.scene.plugins.gltf.GltfLoader.getByte(GltfLoader.java:527)
....

With version 1.72, there is no problem.

I work in Linux

Thanks
THOCED

thanks, I will look at this problem.
@nehon do you have any ideas what is it? 1.8.0 uses 3.2.1 branch.

It looks more like it is using Java9

“In Java 9, the javax.xml.bind.DatatypeConverter class is part of the the java.xml.bind module”

Many projects have had to adapt to this change with Java9

yeah, jMB 1.8.0 uses java10

Mhh it’s used to parse the base 64 embedded data in the gltf file.

so we need to replace it on something else… maybe some apache library?

I haven’t tested but I do beleive it should be enough to add --add-modules java.xml.bind to the runtime arguments.

I’d rather not… having an extra lib just for this seems like a waste.

do you not want to support java 11+ at all?

I guess it’s bit out of scope fo this thread…
Tbh, I don’t know… It’s a bit frustrating that java chain new versions that fast and we are still stuck with java 7 code base because of android… We could make the code compatible to both… We should somehow…
And to be totally frank I’m not completely fond of the way java is evolving…

1 Like

The modules will go away but then they will be external libraries that apps can depend on. It just makes it more complicated for folks deploying on Java 11 but doesn’t really affect the code.

I just tried to run openfire (an XMPP server). Using java 10 it had the same error. I just added “–add-modules java.xml.bind” to the VM arguments and it started working. So that should be a quick work-around.

1 Like

But it will not work for Java 11 :frowning:

For Java 11, you will have to include the library on the classpath. Because Oracle.