Notice: This post concerns JavaFX 1.3. For JavaFX 2, please refer to the newer post.
JavaFX has slashed multiple layers of complexity off the process of development of rich client applications for the JVM. However, at the same time it has added another layer of complexity to their deployment, especially deployment of standalone applications. Now, not only (the right version of) the JRE must be already present on enduser systems, downloaded at install time, or bundled with the application, but also the JavaFX Runtime, and it better be the right version too!
One of the key selling points of Excelsior JET is streamlining of the Java application deployment process through the elimination of JRE dependency. Starting from version 7.0, the removal of JavaFX dependency will be nearly as straightforward, and you will also have your code protected against reverse engineering.
A public beta of Excelsior JET 7.0 is already available, so I have put together a JavaFX Knowledge Base article and then followed it myself to create a zero-dependency Windows setup package for JavaFX 1.2 SDK samples. (The InterestingPhotos sample is missing as I have no Flickr API key and had no time to figure it out.)
Do you develop standalone JavaFX applications? What do you think of the above?
P.S. It is possible to compile JavaFX apps with the current Excelsior JET 6.5, but you have to pack the application jar into the executable with classes, otherwise the application won’t find its own resources. This workaround will not be required in 7.0, thanks to a new feature.