JFX build and deployment - squeaking wheel

Richard Bair richard.bair at oracle.com
Tue Nov 6 08:38:15 PST 2012

> So (finally) understanding that my use case is a secondary one, I'm really
> interested to know more about this Compact profile stuff for Java 8. I'm
> assuming the Minimal Hotspot and compact profile will all run on a standard
> desktop, i.e. there's nothing about it that will make it "embedded"
> specific?

I'm not sure. I've had a couple meetings about jrecreate but I'm not clear on exactly the boundary between it and javafxpackager, for example. javafxpackager (in Java 8) will allow for subsetting jfxrt.jar along some half-dozen to dozen modules (media, web, base, graphics, swing, swt, controls at a minimum). I know that jrecreate is being done by the embedded team rather than the SE team, so I'm not sure it will ship with standard SE. However for all intents on purposes I don't see why not. JavaSE Embedded is basically just a different variant of HotSpot for ARM and smaller-footprint devices (I'm sure there's more to it, but most of the platform is just standard SE).

I will send an email to Bob and see if he can visit our mailing list with more information :-)

> I'd love to know more about the "FX Embedded" project. Is this an actual
> different implementation or just the FX code bundled up in a way that it
> can be included as a JAR? It doesn't seem to be on any of the 3 compact
> profiles so I am assuming there's a different approach for actually
> including it - i.e. it's not a JRE command line thing like the rest of it?
> Will we be able to run FX Embedded on the "compact JRE profile 1" on a
> standard desktop or will it be specific to embedded hardware? If not will
> be able to pull in FX regular and run it on profile 1 VMs? Can we leave out
> things like charts and the web browser, etc, in order to make the JRE even
> more lean (would it help?).

javafxpackager will definitely allow for creating a subset of jfxrt.jar. The Embedded version of FX is basically just normal FX but with a different version of Glass on the bottom depending on the target. It is all being open sourced along with the rest of FX since it is just another Glass platform from our perspective. We've had to do some special shader work for embedded platforms like Raspberry PI, but I believe we're just folding those changes into the standard shaders so we have as little per-platform fragmentation as possible.

> How can I get more info on this project, monitor it's progress and/or be
> involved with early access, etc? Any and all links, tips, announcements and
> resources would be of huge interest.

Hopefully Bob will help clear up the scope of jrecreate. As for javafxpackager subsets, this will of course be done here. If jrecreate is part of SE, then it should all show up in the Java 8 builds (along with the right version of JavaFX 8 and javafxpackager).

Another thing you should look at for making a smaller subset is ProGuard. Primarily it is an obfuscation tool, but if you don't have the jars using Pack200 (which is the case on embedded or iPad etc where CPU horsepower is not that plentiful) then obfuscation is generally a better way forward, and makes it harder for folks to decompile.

> On a side note, I assume Oracle has noted the conversations on legal
> problems with porting OpenJDK/OpenJFX to iOS? This compact JRE stuff opens
> the door at a technical level to Android and iOS support but licencing
> restrictions would still rule out iOS as I understand it.

Yes, we have seen the discussion.


More information about the openjfx-dev mailing list