Excelsior JET Embedded for Linux/ARM: Swing, JavaFX and SWT Work

Back in early 2015, Oracle infamously removed JavaFX from its ARM JDK bundle and Java SE Embedded.

So we were pleasantly surprised to see Excelsior JET Embedded for Linux/ARM to pass our JavaFX tests.

Moreover, SWT tests passed too, so it seems you may be able to compile your graphical Java applications natively for ARM targets regardless of which of the major Java SE UI toolkits they use – AWT/Java2D/Swing, JavaFX, or SWT.

That said, there is no official support for JavaFX on ARM devices, so it may as well be broken on the particular piece of hardware that you are targeting. In fact, Oracle cited the abundance of non-standard hardware as the main reason for dropping support for JavaFX Embedded. We are unsure of the status of SWT support as well. So do extensive testing on you target device before committing to either technology.

Categories: Embedded, Excelsior JET

Tags: ,

Excelsior JET 11 Released With Java SE 8 and JavaFX 8 Support

Last time Excelsior JET was on the current major version of Java SE, at version 7.2, it only supported 32‑bit Windows and Linux. It is the development of the 64‑bit versions for Windows, OS X, and Linux that caused such an enormous gap in Java version support timing. Now that the final piece has fallen into place, we would like to say: Thanks a lot for your patience!

In other news:

  • JavaFX 8 included in the product
  • Startup optimization technologies ported to the 64‑bit versions*
  • Now you can package your applications using just the xpack utility, i.e. without invoking the JetPackII GUI at all.
  • Certain changes under the hood resulted in increased robustness of the compiled applications

* Startup Accelerator is not available for OS X yet.

Learn more
or download your evaluation copy of Excelsior JET 11

P.S. if your Support Contract was active on Sep 29, 2015, or you have purchased Excelsior JET 10.5 from a third-party reseller after that date, you should have received the download instructions for version 11 by email.

If those instructions are neither in your inbox nor in your Junk Mail folder, email us at sales@excelsior-usa.com.

Categories: Excelsior JET, News

Tags: , ,

Excelsior JET 11 Beta 2 Adds A Long-Awaited Feature

We have published Excelsior JET 11 beta 2 for all five platforms.

Version 11 Highlights

  • Java SE 8 and JavaFX 8 support
  • 99.9999% of JCK8 tests passed

New in this beta

  • Startup time improvement technologies are now available in the 64‑bit versions as well.
  • Command-line interface to JetPackII. After a long last, you can package your apps without invoking the JetPackII GUI:

    xpack -add-file c:\work\MyApp\native\MyApp.exe /bin ^
          -backend excelsior-installer ^
          -company MyCompany ^
          -product MyProduct ^ 
          -eula c:\work\MyApp\MyApp.license ^
          -target c:\work\MyApp\installer\MyApp-setup.exe

    Version 11 will not support some features of the JetPackII GUI, but we plan to add them all later.

Known Issues

  • Startup Accelerator is missing in the OS X version and will be added at some point after release.
  • JET-8055: On Linux, application may crash if run from a directory with spaces in the pathname and the Startup Accelerator is enabled.
  • JET-8040: Eclipse RCP applications may not work on 64-bit Ubuntu if created with Eclipse 4.3

Download Excelsior JET 11 beta 2 Now

Categories: Excelsior JET, News

Tags: , , , ,

Excelsior JET 11 beta 1 Available

We have released the first public beta of Excelsior JET 11 for three platforms: Windows/x86, Linux/x64 and OS X. Future betas and the final release will support 64‑bit Windows and 32‑bit Linux as well.


  • Java SE 8 and JavaFX 8 support
  • 99.999% of JCK8 tests passed

Not in this beta

Features planned for version 11 that are not yet ready for beta testing:

  • Startup time improvement technologies in the 64‑bit version
  • JetPackII command-line interface

Known Issues

  • In the Windows version, the JET Setup welcome screen displayed after the installation bears a wrong Java SE version, 7 Update 76, instead of Java SE 8 Update 40. It is safe to proceed.
  • The methods Thread.suspend() and Thread.resume() are not implemented yet. (They have been deprecated since forever, so you should not be using them anyway.)

Download Excelsior JET 11 beta 1 Now

Categories: Excelsior JET, News

Tags: , ,

Breaking: It seems that Excelsior JET already supports JavaFX 2

Update 20-Sep-2015: We are about to release Excelsior JET 11 that will fully support Java SE 8 and JavaFX 8. A public beta is already available. This post is only kept for historical reasons.

Thanks to the persistence of an evaluation user, we have discovered that JavaFX 2 apps can be run without the custom classloader and hence can be fully precompiled with the current version of Excelsior JET! There are a few quirks in the build process, as you will see, and we have not extensively tested it, but the four standard demos seem to be working, at least on Windows.

Read the rest of this entry »

Categories: Excelsior JET

Tags: , ,

Deploying Standalone JavaFX Applications Without Runtime Dependencies

Update 20-Sep-2015: We are about to release Excelsior JET 11 that will fully support Java SE 8 and JavaFX 8. A public beta is already available. This post is only kept for historical reasons.

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.

Categories: Excelsior JET, Java

Tags: ,