OS X application won't launch with jigsaw

Danno Ferrin danno.ferrin at oracle.com
Wed Nov 25 16:45:07 UTC 2015


JEP275 [1] is updating the javapackager to use and create modular runtimes.  I have just posted a webrev with the last features to the openjfx list.  A prior version is in the sandbox-9-jake repo [2] and the webrev will go there.  Except for needing to specify where your jmods are stored, the API and CLI should be 100% compatible with the Java 8 version.  And if it's not, post a bug, we should fix any incompatibilities that are not necessary for Jake integration.  And if they are necessary we should be able to defend the decision in the bug post. 

However, we fully expect that the Java 8 packager will not be able to make bundles holding a Java 9 runtime, and I think this is what you are encountering.

[1] http://openjdk.java.net/jeps/275 <http://openjdk.java.net/jeps/275>
[2] http://hg.openjdk.java.net/openjfx/sandbox-9-jake/rt <http://hg.openjdk.java.net/openjfx/sandbox-9-jake/rt> 

> On Nov 25, 2015, at 2:17 AM, Michael Hall <mik3hall at gmail.com> wrote:
> 
>> On Nov 25, 2015, at 2:27 AM, Alan Bateman <Alan.Bateman at oracle.com> wrote:
>> 
>> I think we touched on this in your other thread where you used the build <build-output>/jdk tree rather than <build-output>/images/jdk.
> 
> Sorry, you are correct on this. Once I had correctly built the images version the modules are no longer individual/exploded.
> I notice there are three images when built from source…
> appmodules.jimage
> bootmodules.jimage
> extmodules.jimage
> 
> For the jake ea version I downloaded from the URL provided at the talks there is only bootmodules.jimage if that matters.
> 
> Copying the other two images into the embedded application jdk still does not seem to launch. Although even command line showed that it should get the internals error. 
> It might be the same problem for the app and I’m just not seeing the more meaningful error messages. 
> 
> Is there any way around the internals for a non-modularized application? A fair percentage of OS X applications might have these particular ‘internals’. There is JEP 272 so if I just wait, and change some code, that should go away. 
> 
> But in general, if you have other applications looking to migrate to 9 that have any of these who want to start out by just getting their application up and running they are not going to work. They will be forced to either eliminate the internal use or go modular from the start? Then the addExports will work. If I’m understanding that error message correctly.
> 
> Michael Hall
> 
> 
> 
> 
> 



More information about the jigsaw-dev mailing list