Le dim. 29 oct. 2023 à 21:21, Martin Desruisseaux <
martin.desruisse...@geomatys.com> a écrit :

> Le 2023-10-29 à 20 h 58, Romain Manni-Bucau a écrit :
> >
> > Is it really different since part of options are related so either we
> > align on the jvm making using maven location mapping easier or we
> > fully integrate but means we must detect errors in options which is
> > for me a hard task
> >
> Why do we need to detect errors in options, isn't the Java error message
> sufficient? The Java error messages are already quite informative
> regarding those options (after we learned the philosophy).
>

Well not really, some libraires complain about it. After it depends which
cases but several can be cryptic after some refactoring.


>
> Those options indeed apply only for <type>module</type>. But the way I
> envision that would be a separated block in <dependency> for saying "if
> this dependency is added on the module-path, then add those
> --add-exports options". It would be used mostly for the JUnit or TestNG
> dependency. In this proposal, this element would be independent to
> <type>, except that it would be ignored (or raise an error) if the type
> is JAR.
>

Then you are back to the dependency set solution which is not the type
solution and in this option the type is fully useless.


>
>
> > side note: please think about transitivity, here with the proposal you
> > must define *all* your transitive deps in your consumer pom.
> > Completely changes the maven philosophy.
> >
> Why would we need to declare all transitive dependencies? The
> <type>module</type> element in the pom.xml of each dependency would apply.
>

Cause your transitive deps are then jars, not modules (that said the
opposite is wrong too for most libs)


>
>      Martin
>
>

Reply via email to