Succeeded migrating E4 project that uses GEF/JavaFX to OpenJFX 11 [message #1805238] |
Wed, 10 April 2019 09:33 |
Muammer Eroglu Messages: 2 Registered: April 2018 |
Junior Member |
|
|
I was planning to migrate an E4 application that uses JRE8, GEF4 & JavaFX to Java 11 and OpenJFX 11, in order to make use of GTK3 support in Linux. Spent two days struggling and I finally succeeded.
First of all, I am using Debian Buster and installed openjfx 11 via apt-get. Unfortunately, it didn't come with javafx.swt; thus I had to download it manually. I also have openjdk-11.
I also upgraded Eclipse to the latest version; 2019-03. Installed EfxEclipse and GEF from its own update site.
I changed the JRE libraries to Java 11 for all E4/Osgi bundles of the application. In order to eliminate compile time errors, I made a user library containing the JavaFx jar files and added it to bundles' classpath if they had a JavaFx reference. While openjfx.io suggests to use Modulepath; it didn't work with projects containing FxCanvas, but classpath worked.
Last of all, I added the VM argument for EfxEclipse to load classes from OpenJFX 11 modules, that is, "efxclipse.java-modules.dir". Final VM Arguments inside the product file looks like this:
-Dosgi.framework.extensions=org.eclipse.fx.osgi -Defxclipse.java-modules.dir=/usr/share/openjfx/lib
That was all, the application works with JRE11/OpenJFx 11 and also with GTK3.
[Updated on: Wed, 10 April 2019 11:18] Report message to a moderator
|
|
|
Powered by
FUDForum. Page generated in 0.07409 seconds