Java exception in command line version


#1

I downloaded the MEGAN6 ultimate edition version for linux and I am attempting to run it on an AWS node. I’ve installed the dependencies recommended in the user guide, but I’m still generated a fatal error:

MEGAN fatal error:
java.lang.NoClassDefFoundError: javafx/embed/swing/JFXPanel

The output of java -version that I generate is below:
openjdk version "1.8.0_45"
OpenJDK Runtime Environment (Zulu 8.7.0.5-linux64) (build 1.8.0_45-b14)
OpenJDK 64-Bit Server VM (Zulu 8.7.0.5-linux64) (build 25.45-b02, mixed mode)

I’ve spent a long time checking installations of openjdk and openjfx, both of which seem to be installed. If you could recommend trouble-shooting steps for this kind of fatal error, I would really appreciate it! It seems others have posted on this issue as well, without any reply.


#2

Looks like JavaFX is not correctly installed.

Please try to (re-)install JavaFX using

sudo apt-get install openjfx

Alternative, install and use the Oracle JRE, which is what I use to develop and run MEGAN


#3

It is good that I just read this thread. I had similar problem with the installation and I was not aware that openjfx is needed at all.
Perhaps in the next version you could modify the ‘java is not installed … JVM needs to B at least 1.8 …’ error message with a notion on the need of openjfx.

Nevertheless, thx for the help.


#4

Thanks Daniel for your response. For others with this issue, I strongly recommend installing the latest JRE as opposed to installing OpenJDK + JavaFX. I finally got this to work by using anaconda (conda install -c cyclus java-jre=8.45.14) to install the latest JRE. This updated all the appropriate paths; the output of java -version now looks like this and Megan is running smoothly:

$ java -version
java version "1.8.0_45"
Java™ SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot™ 64-Bit Server VM (build 25.45-b02, mixed mode)