Bring your own JRE (BYOJ)

Stefan Fuchs snfuchs at gmx.de
Thu Apr 9 22:02:18 UTC 2015


Hi,

this week a discussion about not being able to use internal apis in Java 
9 was started on the openjfx-dev mailinglist.
see 
http://mail.openjdk.java.net/pipermail/openjfx-dev/2015-April/017017.html

I think installed applications can get around with it, by installing a 
modified and self compiled version of the jre.
They can expose any internal function of the jre to their application or 
can fix the bug within the jre.
Its more work then as it is, but it can be done.

Webstart applications on the other hand currently depend on the jre 
installed on the client.
Developers may need to circumvent bugs introduced with a new version of 
the jre. Often this is only possible by hacking the internals of the jre.
I mentioned https://javafx-jira.kenai.com/browse/RT-31205, which came 
without warning in Java 7u25 CPU (June 2013). It was fixed in Java 7u40 
(September 2013). Without access to internal apis we would not been able 
to keep our application (and business) alive over this period.

So one idea would be to allow webstart applications access to internal apis.

The other idea i had today was, that webstart applications could bring 
their own jre/module(s).

So provided the webstart application has the all-permissions flag set to 
true, it can download parts of the jre from the server.

So for e.g. I could fix a bug in javafx, compile the jre, upload the 
javafx module to my webserver and instruct the webstart launcher in the 
jnlp file to download the javafx module from the webserver and use it 
instead of installed javafx module.

I guess their could be some versioning problems, though.

Any thoughts?

Stefan









More information about the jigsaw-dev mailing list