> On May 7, 2015, at 6:27 AM, Tom Eugelink <t...@tbee.org> wrote:
> 
> On 7-5-2015 02:15, Danno Ferrin wrote:
>> You can already do some of that today with Java 8 and the Java Packager.  
>> You can create a file tree that can be zipped up that includes the runtime 
>> and all of the application files, as well as native installers for windows, 
>> linux, and mac that will install this file tree (or “image”).
>> 
>> We haven’t announced many public plans for Java 9 yet (since many parts are 
>> still TBD) so I cannot comment on how jigsaw and java packager will 
>> integrate, but I would expect that they will work together in some fashion.
>> 
> 
> From all the documentation I find, I understand that even though with Java 
> packager you can create an executable including the (required parts of the) 
> JVM, you still need to unpack and repack all the jars into a single jar. This 
> has the problem of breaking signed jars. Classloader based solutions like 
> onejar get into all kind of conflicts with possible other classloaders in the 
> application.
> 

I don’t know where you got your information, it has never been the case for as 
long as i’ve used it and worked on it before my employ at Oracle that you have 
to rely on a single jar for Java Packager.  Repacking jars is completely 
unneeded and the Java Packager takes the library jars you provide without 
alteration, preserving external signatures and structure essential to stuff 
like OSGi.  

In fact, you can provide assets that are not jars and you can set the class 
path to only include certain jars, no need to unpack jars at runtime.


> It would be a major improvement (not only for JavaFX applications, but also 
> standalone servers) if it would become possible to create a truly single 
> distributable, without having to repack the jars. So either by automatic 
> unpacking to a tmp and setting the classpath prior to stating java (cleaning 
> up afterwards), or allowing jars-in-jars or jars-in-distributable.
> 

In 8u40 we added an option to install your application as service or daemon, so 
you can use the java packager to install your microsoervices.

Reply via email to