[Jigsaw] Apache Maven status update

Robert Scholte rfscholte at apache.org
Tue Jan 5 22:31:06 UTC 2016


Op Tue, 05 Jan 2016 22:55:03 +0100 schreef Jochen Wiedmann  
<jochen.wiedmann at gmail.com>:

> On Thu, Dec 31, 2015 at 1:01 PM, Robert Scholte <rfscholte at apache.org>  
> wrote:
>
>> The next blocking issue requires some work by the Apache Maven team  
>> and/or
>> at the QDox project[2].
>> QDox is a Java Parser which is used to read javadoc and/or annotations  
>> from
>> source in order to generate xml or other Java files.
>> With the module-info.java in place we get a ParserException, which is of
>> course expected at this moment.
>
> Hi, Robert,
>
> wouldn't it be possible to simply ignore **/module-info.javaa?
>
> Sounds like the obvious solution to me.
>
> Jochen

QDox has no such option, there was never a need for it: if a java-file is  
within reach, just parse it.
I've talked with Hervé Boutemy about this and in this case we don't need  
source parsing anymore. Everything has already been transformed from  
javadoc to Annotations.
However, for extracting this info both strategies where executed. I've  
improved the corresponding maven-plugin so you can choose which  
extractor(s) to use[1].

The result is that I can run "mvn package" with success for the subset of  
this Maven multimodule project.

The next challenge is: "mvn compile". This means there are no jars  
available yet within the reactor, those Maven modules still have the  
(exploded) directory with classes. Up until now the 'target/classes' was  
used, but according to JEP261 it now must look something like  
target/mods/module.name/ (notice the extra directory). Maven uses the  
Artifact.file field, which points to the classes output directory after  
"compile" and points to the jar after "package". A lot of plugins build up  
the classpath based in this information.
So I'm looking for a solution there the compiler can use target/mods as  
-mp argument, but where other plugins can still use it as a classpath. I  
want to prevent that users need to update almost *every* maven-plugin when  
using Java9.

Robert

[1]  
https://github.com/codehaus-plexus/plexus-containers/commits/plexus-containers-1.x/plexus-component-metadata


>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe at maven.apache.org
> For additional commands, e-mail: dev-help at maven.apache.org


More information about the jigsaw-dev mailing list