jGRASP JavaFX Setup for Java 11 and Higher

As of Java 11, JavaFX is no longer included in the Java distribution. To use it, you will need to download JavaFX and modify jGRASP compiler flags. Simpler settings for JavaFX will be added in a future jGRASP release.

JavaFX is available here: https://openjfx.io. Download and extract the appropriate JavaFX SDK for your OS.


Settings for jGRASP 2.0.5_06 Beta

Simple settings for JavaFX have been added in jGRASP 2.0.5_06 Beta. If you are using this version, go to Settings > Compiler Settings > Workspace (you can also do this at the project or file level if you will use different versions of JavaFX for different projects or files). Select language Java if not already selected. Select the JavaFX tab. Click off the default box for JavaFX Home and set the JavaFX home to the root directory of the extracted JavaFX installation.

Normally you will only use the javafx_controls module, but if other modules will be used they can be set in JavaFX Home as a comma-separated list.


Settings for Older jGRASP Versions

In jGRASP, go to "Settings" > "Compiler Settings" > "Workspace" (or "Project ..." if you only want to use JavaFX for a single project). On the "Flags/Args" tab, add:

--module-path <place where JavaFX was extracted>lib --add-modules=javafx.controls
in the following places: "FLAGS or ARGS" for the "Compile" and "Document" rows. "FLAGS2 or ARGS2" for the "Run" and "Debug" rows.

For example, if you extracted JavaFX to C:\javafx-sdk-11.0.2 on Windows, your settings dialog would look like this:

Most likely you will only need javafx.controls, but if other modules will be used they need to be added to the end of the flags, like: --add-modules=javafx.controls,javafx.other_module .

Note that these settings won't interfere with non-JavaFX projects.