User Tools

Site Tools


programming:java:javafx

Java FX

The fastest way to create Java FX Applications - is to combine it with Eclipse RCP.

Fallpits
  • Lookout, that your PATH contains the JDK not the JRE. Can see in IDE what is really used in Projects:
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:

  1. pull the gradle project
  2. Go to FIle > Open > build.gradle
  3. Configure the project, by specifying the location of your Java SDK
Gradle Tools

The available Gradle-Tasks are available in IDEA via View > Tool Window > Gradle

To update the project from build gradle use the sync button at the left part ofr the gradle tools

To reimport the project form build.gradle use File > Invalidate Caches / Restart

programming/java/javafx.txt · Last modified: 2023/11/01 07:31 by skipidar