Table of Contents
Java FX
The fastest way to create Java FX Applications - is to combine it with Eclipse RCP.
Fallpits
IDE
The IDE is the E(fx)clipse. Eclipse with some plugins made for Java FX: http://efxclipse.bestsolution.at/index.html
Examples of different Projects
To create an Eclipse RCP project, based on Java FX follow this tutorials: http://wiki.eclipse.org/Efxclipse/Tutorials
Eclipse4 SWT App with single JavaFX Part embedded
TARGET
1. add http://download.eclipse.org/efxclipse/updates-nightly/site to the TARGET!
PROJECT
2. create an RCP Project
3. add plugins and features to the product and to your launch config
- at.bestsolution.efxclipse.runtime.javafx
- at.bestsolution.efxclipse.runtime.osgi
4. add the following to make the RCP use at.bestsolution.osgi implementation, which will enable RCP and JavaFX communication pass -Dosgi.framework.extensions=at.bestsolution.efxclipse.osgi in your launch config's VM-Arguments
Unfortunately, JavaFX was not written with OSGi in mind so there are various sources of error when running inside OSGi. These problems include the location of the JavaFX binaries in your Java installation and class loading issues because of OSGi's visibility rules. e(fx)clipse provides helper libraries for dealing with all of those problems and makes writing JavaFX applications on top of Eclipse Equinox feel as easy as it is with SWT and Swing.
5. set launch configurations “clear all”
Intellij Idea
JavaFX project
Building JavaFx apps.
You can start creating a JavaFX project.
The structure won't fit the gradle structure but this can be edited later.
To make Idea build the jar, when selecting Build > Build Project select “Include in project build”
the jar will be generated under “artifacts”
modify the project structure, to fit gradle structure
TODO
add build.gradle
TODO
gradle assemble gradle run
Gradle Project
It is better to use a Gradle project, because Gradle can be used completely headless, on the CI. And the result will be the same, when using the Gradle mode inside of the IDE.
Here is a gradle-stub-project for a JavaFX app
https://github.com/skipidar/EmptyProject-JavaFX-Idea-Gradle.git
It was created by building rebuilding an Idea project to a maven structure
and then adding a build.gradle,
capable to build this project,
and then reimporting the project to idea as a gradle (not as JavaFX project)
To use this project:
- pull the gradle project
- Go to FIle > Open > build.gradle
- Configure the project, by specifying the location of your Java SDK