[
https://issues.apache.org/jira/browse/MPLUGIN-385?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17460980#comment-17460980
]
Romain Manni-Bucau commented on MPLUGIN-385:
--------------------------------------------
This is one issue of current design: all the API can be used as provided but
the API is not what is in maven/lib but only a very very small subset (the one
leaked in mojo classrealm) so anything else must stay in scope compile to
survive a maven version change (keep in mind plugins are not used with a single
version of maven). At some point we'll need to do our homework and define an
explicit API where provided scope would be encourage but AFAIK we don't have it
yet. Hope it makes sense.
> Clarify usage of scope "provided" for Maven artifacts with group id
> "org.apache.maven"
> --------------------------------------------------------------------------------------
>
> Key: MPLUGIN-385
> URL: https://issues.apache.org/jira/browse/MPLUGIN-385
> Project: Maven Plugin Tools
> Issue Type: Improvement
> Components: Plugin Plugin
> Affects Versions: 3.6.2
> Reporter: Konrad Windszus
> Priority: Major
>
> Since m-plugin-p 3.6.2 (MPLUGIN-370) all dependencies with group id
> {{org.apache.maven}} are supposed to be referenced with scope {{provided}}.
> But once turning dependency {{org.apache.maven:maven-archiver:3.5.1}} to
> scope provided my ITs based on
> {{org.apache.maven.shared:maven-verifier:1.7.2}} are starting to fail with
> NCDF errors
> {code}
> java.lang.NoClassDefFoundError:
> Lorg/apache/maven/archiver/MavenArchiveConfiguration;
> {code}
> Is that a bug in the classloader with maven-verifier? What if I want to use a
> newer version than shipped with Maven like "maven-archiver 3.5.1"?
> What about group ids starting with "org.apache.maven" like
> "org.apache.maven.shared"?
> You can reproduce with
> https://github.com/apache/jackrabbit-filevault-package-maven-plugin.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)