'Error occurred during initialization of boot layer java.lang.module. FindException: Module javafx.controls not found

I am trying to build the sample javaFX application in the Intellij 2018.3 IDE. I have installed the oracle JDK11, and downloaded openjfk11. I created a library linked to the javafx sdk and added the line --module-path=${PATH_TO_FX} --add-modules=javafx.controls,javafx.fxml to the VM options line. PATH_TO_FX is defined as an environment variable pointing to my javaFX folder.

I have searched through a number of postings on this site, including This solution to my exact error message. The odd thing I cannot figure out is, This solution works for me if there is no build directory. But if I have already built the project once, it then refuses to run and gives me the stated error. If I delete the build directory and try again, then the program runs correctly again.



Solution 1:[1]

Well It looks like I just goofed up something with the output directory because this morning I tried resetting the build path to the default and it just started working.

Solution 2:[2]

Try adding path to JavaFX SDK lib folder instead of just the JavaFX SDK. It worked for me.

ex:

--module-path C:\javaFX\javafx-sdk-11.0.2\lib --add-modules javafx.controls,javafx.fxml

*Replace the "C:\javaFX\javafx-sdk-11.0.2\lib" part with the path to your javaFX SDK "lib" folder.

Solution 3:[3]

You should not use VM Path if you define exports and opens in module-info.java. Because VM Path is essential if do not explicitly define module. Then IntelliJ internally creates a module for us.

Solution 4:[4]

Confirm if you didnt add the javafx sdk to the class path instead of the modulepath

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 SassyViking
Solution 2 dovh.me
Solution 3 Raghvendra Mishra
Solution 4 Tony-17