Skip to content

Instantly share code, notes, and snippets.

@ribasco
Last active May 14, 2021 03:25
Show Gist options
  • Save ribasco/e367f97ead0cf590131aa2ced095c5f8 to your computer and use it in GitHub Desktop.
Save ribasco/e367f97ead0cf590131aa2ced095c5f8 to your computer and use it in GitHub Desktop.
Make controlsfx work in SceneBuilder 16+ and JDK 9+

Make controlsfx/jfoenix controls work in SceneBuilder 16+ and JDK 9+

Need to add --add-opens and --add-exports directives to allow some controls to work in SceneBuilder (e.g. RangeSlider).

Simply edit the SceneBuilder.cfg file and update the the [JavaOptions] section.

From

[JavaOptions]
java-options=--enable-preview
java-options=-Djpackage.app-version=16.0.0

To

[JavaOptions]
java-options=--enable-preview
java-options=-Djpackage.app-version=16.0.0
java-options=--add-exports=javafx.base/com.sun.javafx.binding=ALL-UNNAMED
java-options=--add-exports=javafx.graphics/com.sun.javafx.scene=ALL-UNNAMED
java-options=--add-exports=javafx.graphics/com.sun.javafx.scene.traversal=ALL-UNNAMED
java-options=--add-exports=javafx.controls/com.sun.javafx.scene.control.inputmap=ALL-UNNAMED
java-options=--add-exports=javafx.base/com.sun.javafx.event=ALL-UNNAMED
java-options=--add-opens=javafx.fxml/javafx.fxml=ALL-UNNAMED
java-options=--add-opens=javafx.controls/com.sun.javafx.scene.control.behavior=ALL-UNNAMED
java-options=--add-opens=javafx.graphics/com.sun.javafx.stage=ALL-UNNAMED
java-options=--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
java-options=--add-exports=javafx.graphics/com.sun.javafx.stage=ALL-UNNAMED
java-options=--add-exports=javafx.controls/com.sun.javafx.scene.control.behavior=ALL-UNNAMED

The config file can be located at the installation directory:

  • windows: C:\Users\<Username>\AppData\Local\SceneBuilder\app\SceneBuilder.cfg
  • linux: /opt/scenebuilder/app/SceneBuilder.cfg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment