I have both openjdk8 and 11 installed. Neither comes with JavaFX. I installed both openjfx and libopenjfx-java packages, but can't get my app to work.
sudo apt list --installed| grep jfx
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libopenjfx-java/cosmic,cosmic,now 11+26-4 all [installed]
libopenjfx-jni/cosmic,now 11+26-4 amd64 [installed,automatic]
openjfx-source/cosmic,cosmic,now 11+26-4 all [installed]
openjfx/cosmic,now 11+26-4 amd64 [installed]
Openjfx unpacks to /usr folder
dpkg-query -L openjfx
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/openjfx
/usr/share/doc/openjfx/TODO.Debian
/usr/share/doc/openjfx/changelog.Debian.gz
/usr/share/doc/openjfx/copyright
/usr/share/openjfx
/usr/share/openjfx/lib
/usr/share/openjfx/lib/javafx.properties
/usr/share/openjfx/lib/javafx.base.jar
/usr/share/openjfx/lib/javafx.controls.jar
/usr/share/openjfx/lib/javafx.fxml.jar
/usr/share/openjfx/lib/javafx.graphics.jar
/usr/share/openjfx/lib/javafx.media.jar
/usr/share/openjfx/lib/javafx.swing.jar
/usr/share/openjfx/lib/javafx.web.jar
Am I supposed to somewhat copy the libraries to java lib folder? Otherwise it does not compile blabbering not existing javafx.* packages
Previously working jar now exits with:
Error: Could not find or load main class helloworld.HelloWorld
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application
EDIT
I might be one step closer thanks to @José Pereda
java --module-path /usr/share/openjfx/lib --add-modules=javafx.controls,javafx.fxml
now throws
Caused by: java.lang.IllegalAccessError: class impl.org.controlsfx.version.VersionChecker (in unnamed module @0x28658d1c) cannot access class com.sun.javafx.runtime.VersionInfo (in module javafx.base) because module javafx.base does not export com.sun.javafx.runtime to unnamed module @0x28658d1c
at impl.org.controlsfx.version.VersionChecker.<clinit>(VersionChecker.java:50)
at org.controlsfx.control.ControlsFXControl.<init>(ControlsFXControl.java:35)
at org.controlsfx.control.CheckComboBox.<init>(CheckComboBox.java:113)
at org.controlsfx.control.CheckComboBox.<init>(CheckComboBox.java:104)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at java.base/java.lang.Class.newInstance(Class.java:584)
at javafx.fxml/javafx.fxml.FXMLLoader$InstanceDeclarationElement.constructValue(FXMLLoader.java:1019)
at javafx.fxml/javafx.fxml.FXMLLoader$ValueElement.processStartElement(FXMLLoader.java:754)
at javafx.fxml/javafx.fxml.FXMLLoader.processStartElement(FXMLLoader.java:2722)
at javafx.fxml/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2552)
at javafx.fxml/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2466)
at javafx.fxml/javafx.fxml.FXMLLoader.load(FXMLLoader.java:2435)