I have Java 8 and Ubuntu 18.04. I'm using NetBeans and when tried to make some program, it couldn't be done because JavaFX is missing.

I installed Java JDK with NetBeans from Oracle's site and thought everything is included but obviously I didn't check it well.

What should I do, what should I install? I'm not so good at this and don't know if problem is with Ubuntu or Java. :(


5 Answers 5


In the Ubuntu 16.04 and later default repositories JavaFX is packaged as a separate package named openjfx. To install it in Ubuntu 18.04, open the terminal and type:

sudo apt install openjdk-8-jdk openjfx

The openjfx package can also be installed from the default repositories in all currently supported versions of Ubuntu.

Check that JDK 8 is selected as the default Java version in Netbeans -> Tools -> Options -> Java -> Nashorn tab -> click the Manage Platforms button -> click the Add Platform button -> click the radio button marked Java Standard Edition -> click the Next button -> browse to /usr/lib/jvm/java-8-openjdk-amd64 and select it as the default Java version.

Optionally you can install openjdk-11-jdk instead of or alongside openjdk-8-jdk. openjfx works with both openjdk-8-jdk and openjdk-11-jdk in Netbeans in Ubuntu 18.04. I am using Netbeans 8.2 10.0 in Ubuntu 18.04.

  • Thanks, your commands work but still with my java.io library I get the error Exception in thread "main" java.lang.IllegalStateException: Toolkit not initialized ...I don't know why
    – maria
    Nov 14, 2018 at 17:49
  • @Mara I'm sorry, I found the error you got was in my JavaFX code because I didn't copy all the code to the end in Pastebin the first time that I uploaded it. I left out the two curly braces at the end the first time I uploaded it. I uploaded the code again here. The name of my JavaFX project in Netbeans is HelloWorldFX.
    – karel
    Nov 15, 2018 at 0:26
  • 1
    JavaFX works for me on 18.04 only after installing JDK 8 AND changing the project SDK to 8 (doesn't want to work on SDK 10) in IntelliJ.
    – Line
    Feb 6, 2019 at 9:04
  • It must be a JDK paths issue in IntelliJ because JDK 8 and 11 both work alongside each other in Netbeans in Ubuntu 18.04 with the same JavaFX package for both of them.
    – karel
    Feb 6, 2019 at 9:27
  • I checked my whole hard drive but I can't seem to find a javafx distribution after installing openjfx. it's not in /usr/lib/jvm/<jdk>/jre/lib/ext/ where I found it to be on other devices such as my laptop running manjaro. :/ Jun 18, 2019 at 9:42

I think the easiest way is to install sdkman. Once installed, check for all the available candidates:

$ sdk list java

which will show a wide variety of options. You may select one with the FX suffix. In my case I can see something like this:

 Azul ZuluFX   |     | 11.0.2       | zulufx  |            | 11.0.2-zulufx       
               |     | 8.0.202      | zulufx  |            | 8.0.202-zulufx      
 BellSoft      |     | 12.0.2       | librca  |            | 12.0.2-librca       
               |     | 11.0.4       | librca  |            | 11.0.4-librca       

So, you can install it using this command:

$ sdk install java 11.0.2-zulufx   


$ sdk install java 8.0.202-zulufx # if you want java 8

And you are good to go! I hope this helps! :)


This issue can be fixed by adding the openjfx path and modules as arguments when running the javafx application, I already posted the solution on this link.
Good luck


I had the same problem. I installed openjdk, but it wasn't compatible with openjfx, since the only version available is openjfx 11.

So i searched for a while and stumbled across ZuluFX. I installed it with sdkman, which you can download from their website. After installing sdkman, just install zulufx.

$ sdk install java 8.0.202-zulufx

Your $JAVA_HOME should be the path where sdk man is installed -> /home/valentin/.sdkman/candidates/java/current

Now you can switch you JDK to that path in Netbeans and it should just work fine!


Liberica JDK "full" contains JavaFX. There are 8, 11 and latest versions as .tar.gz ans as .deb packages:


It is also available in sdkman as mentioned above (with updates).

For regular apt updates there is an official apt repository:


To install version 11 containing FX use

sudo apt install bellsoft-java11-full


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .