I will have to analyze that. [1]

When working on Jigsaw I had to make clear what's the difference between the two of them: - both are required on the classpath during compilation, but at runtime the provided should already be there ( e.g. servlet-api), optional can be there (springboot dependency)

there it is translated like this:
module M {
requires javax.servlet-api; //it is required both at compile time and at runtime, even though it is the container which provides this module requires static some.springboot.dep; //required during compiletime, unused or discoverable during runtime
}

and about those compile-time annotations like Plugin Annotations: those are actually compile-time only.

[1] https://cwiki.apache.org/confluence/display/MAVEN/POM+Model+Version+5.0.0

On Tue, 27 Dec 2016 20:07:06 +0100, Christian Schulte <[email protected]> wrote:

Am 12/27/16 um 14:48 schrieb Robert Scholte:
IMO scopes weren't designed to make transitive dependencies disappear.

Does it mean you would agree that there should be no "provided" scope?
Instead "compile+optional" or "runtime+optional" or "test+optional"
should be used, where "optional" is just another name for "transitive"?
So in model version 5.0.0 we really should rename "optional" to
"transitive"? Would you also agree that the "test" scope should be
transitive by default in model version 5.0.0? So in model version 5.0.0
all scopes are transitive by default and a dependency can be flagged
non-transitive by setting the "transitive" attribute to "false" which
defaults to "true" and there are no optional dependencies any more.
Maybe the dependency element needs a way to carry freetext comments on
them as well so that things can be documented (I flagged this not
transitive, because..., I pulled this in to upgrade transitive
dependency XYZ of ABC..., etc.).


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to