Hi Rémi,

Le dim. 10 juil. 2016 à 23:41, Remi Forax <fo...@univ-mlv.fr> a écrit :

> Hi Antoine,
> you were sleeping during my presentation at last Devoxx FR :)
>

I was probably giving mine ;).

The issue is that an automatic jar can access to the classpath while a
> modular jar can not,
> so if jlink allows automatic modules, you may have surprising
> NoClassDefNotError at runtime ruining the whole idea of jigsaw.
>

I got that, the problem is when one does his homework and achieve to
compile and execute the code with all the automatic modules in the module
path and an empty class path like I did... No advantage.


>
> A simple workaround is to use jdep -geninfo on the automatic jar to
> generate a module-info.java, compile it with javac and inject it into the
> jar with a jar --update.
>
> see https://www.youtube.com/watch?v=a8xnnR3Bz6w&feature=youtu.be&t=2570
> (in french)
>

Thanks for the trick, I'm not a big fan of updating released jar, but it's
better than nothing.

Antoine


>
> Rémi
>
> ----- Mail original -----
> > De: "Antoine Sabot-Durand" <anto...@sabot-durand.net>
> > À: jigsaw-dev@openjdk.java.net
> > Envoyé: Dimanche 10 Juillet 2016 22:40:57
> > Objet: Jlink and automatic module
> >
> > Hi All,
> >
> > I encounter the same problem than Sander in [1] regarding automatic
> modules
> > and Jlink.
> > My project has a lot of modules and uses a lot of dependencies (Java EE
> > spec and impls) so it took me a few days to walk thru the writing of all
> my
> > module-info.java files. hopefully I only found 2 automatics modules from
> > 3rd parties that had split packages and propose PR to these project to
> > correct these, in the meantime I use personal snapshot version for my
> JDK9
> > compilation.
> > At the end everything compiled fine without using classpath, but how
> > frustrating it was to discover that I was unable to use Jlink because of
> > this automatic module limitation.
> >
> > If you put my experience in perspective, it means that if you depend on
> > tens of dependencies you'll have to wait months, even years before other
> > projects decide to switch to JDK9 letting use use this great Jlink
> feature.
> > IMO, if this limitation is not solved it may reatard jdk9 adoption on a
> lot
> > of projects. I guess it's easier to say than do, but having a solution to
> > externally add meta-data to these automatic modules (an kind of external
> > module-info.class) could be doable for a more advance bridge approach.
> >
> > Anyway, thanks for all the great work and your feedback.
> >
> > Antoine Sabot-Durand
> >
> > [1]
> http://mail.openjdk.java.net/pipermail/jigsaw-dev/2016-March/006526.html
> >
>

Reply via email to