Richard Zowalla created TOMEE-4705:
--------------------------------------
Summary: Migrate the Maven plugins off the Maven 2 API
Key: TOMEE-4705
URL: https://issues.apache.org/jira/browse/TOMEE-4705
Project: TomEE
Issue Type: Task
Components: TomEE Core Server
Reporter: Richard Zowalla
Fix For: 11.0.0
The TomEE Maven plugins still compiled and resolved against the Maven 2 API.
{{maven.version}} in {{maven/pom.xml}} was 2.2.1, even though the project itself
requires Maven 3.9.x to build.
Changes:* {{maven.version}} moves from 2.2.1 to 3.9.16.
* {{maven\-project}} does not exist beyond Maven 2. {{MavenProject}} and
{{MavenProjectHelper}} live in {{maven\-core}} now, so the five modules that
used it depend on {{maven\-core}}.
* {{tomee\-maven\-plugin}}, {{tomee\-embedded\-maven\-plugin}} and
{{jarstxt\-maven\-plugin}} also use {{ArtifactFactory}}, {{ArtifactResolver}}
and the {{ArtifactRepository}} types around them, which Maven 3 keeps in
{{maven\-compat}}, so they take that as well.
* Dropping Maven 2 also drops backport\-util\-concurrent, which it pulled in
transitively. {{JarsTxtMojo}} and {{JsCustomizertest}} imported
{{edu.emory.mathcs.backport.java.util.Collections}}, a Java 1.4 era backport
of {{java.util.concurrent}}, and now use {{java.util.Collections}}.
* The {{aether\-api}} dependencyManagement entry is removed. Nothing declared it
and no source imports {{org.sonatype.aether}}; Maven 3.1 moved to Eclipse
Aether and the resolver arrives through {{maven\-core}}.
All eight modules under {{maven/}} build and their tests pass. No
{{org.apache.maven}} artifact below 3.9.16 is left in any of their dependency
trees.
Follow\-up: {{ArtifactFactory}} and {{ArtifactResolver}} are deprecated in Maven
3 and only available through {{maven\-compat}}. Moving those call sites to
{{RepositorySystem}} / Eclipse Aether would let {{maven\-compat}} be dropped.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)