JFX build and deployment - squeaking wheel
Daniel Zwolenski
zonski at gmail.com
Thu Nov 8 16:16:42 PST 2012
Thanks for the information Bob.
The focus for this work looks to be very much in the embedded space. For
some of us, there is a strong motivation to see this in the desktop space
and I'd be interested in seeing if/how we can achieve that, and what, if
anything, there's anything I can do towards that.
Should I be asking questions on this here in the JFX list or in the
build-infra-dev list you mentioned - or is this something just not on the
table and therefore not something anyone will want to discuss?
Cheers,
Dan
On Fri, Nov 9, 2012 at 8:55 AM, John C. Turnbull <ozemale at ozemail.com.au>wrote:
> So where does that leave JavaFX for mobiles and tablets?
>
> -jct
>
> -----Original Message-----
> From: openjfx-dev-bounces at openjdk.java.net
> [mailto:openjfx-dev-bounces at openjdk.java.net] On Behalf Of Bob Vandette
> Sent: Friday, 9 November 2012 08:12
> To: openjfx-dev at openjdk.java.net
> Cc: John_Smith at symantec.com; zonski at gmai..com
> Subject: JFX build and deployment - squeaking wheel
>
> There have been some questions on this list about Jigsaw, compact profiles,
> embedded, minimal VMs
> and the JRE customization tool called jrecreate. Richard asked me to jump
> in to try to clear up any confusion.
>
> Here goes ....
>
> The Java Modularity Project (project Jigsaw) that was originally planned
> for
> JDK8 was deferred to JDK9.
> The Java Embedded team (I'm the lead) was expecting to use Jigsaw in order
> to provide smaller customizable Java runtimes for embedded devices.
> Lacking
> this new functionality, we decided to propose a simpler alternate plan that
> would enhance the JDK8 specification to allow the distribution
> of a small set of profiles that are subsets of the full Java runtime.
> These are called Compact Profiles.
> We have proposed three compact profiles. A talk and presentation that I
> gave at JavaOne describes these profiles.
>
>
> https://oracleus.activeevents.com/connect/fileDownload/session/CDC887FAEAD8A
> BE54064406AC304AD59/CON4538_Vandette.pdf<https://oracleus.activeevents.com/connect/fileDownload/session/CDC887FAEAD8ABE54064406AC304AD59/CON4538_Vandette.pdf>
>
> The Java Enhancement Proposal (JEP) for this work is here:
>
> http://openjdk.java.net/jeps/161
>
> The openjdk repository that implements our current prototype is located
> here:
>
> http://hg.openjdk.java.net/jdk8/profiles
>
> The mailing list that discusses the profiles is
> build-infra-dev at openjdk.java.net since the creation of the new profiles is
> done using the new configure based JDK build system.
>
> This repository allows you to do a build that generates the full JRE, JDK
> but in addition produces three additional image targets (compact1,
> compact2,
> and compact3).
>
> In order to achieve the smallest Java runtime for embedded (our goal is
> around 10MB), we have applied changes to Hotspot that allow us to build a
> small VM (2-3MB) with reduced functionality. The small VM (minimal) +
> compact1 profile goal we've set is around 10MB. We're at 11MB today.
>
> In addition to the profile bundles and the small VM, we have a reduced
> Embedded FX stack that we'll run on embedded devices such as the
> RaspberryPi. This FX Embedded stack is a compatible FX implementation
> without
> media and webkit support. The goal for this added stack is 6MB.
>
> The jrecreate tool that some of you have asked about is not a java
> stripping
> tool. It's main purpose is to assist the embedded developer in customizing
> Java runtimes. It allows the developer to select which profile, VM,
> debugging options, compression, security and FX options. It does not strip
> the full JRE to produce the compact profile. The jrecreate will be packaged
> with the three compact profile binaries. It simply copies these profiles
> and applies some additional massaging based on the selected options.
>
> We have already pushed the minimal VM changes to JDK8 hotspot and will be
> open sourcing the compact profile changes since they will be a standard
> feature of JDK8 (independent of embedded). The current profile changes in
> our project repository are only functional for Linux x86.
>
> We certainly recognize the value that small Java runtimes + reduced FX
> could
> have on Java applications published on Web App stores, but the current
> immediate plan is that the jrecreate tool is only going to be available
> with
> our
> embedded binary downloads since that's where it's needed most. I've had
> some discussions with our Netbeans team to
> see what it will take to make Netbeans profile aware. This might be a good
> way of taking advantage of profiles, reduced FX for producing smaller
> applications for distribution.
>
> I hope this help,
> Bob.
>
>
>
More information about the openjfx-dev
mailing list