This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git


The following commit(s) were added to refs/heads/main by this push:
     new c065180ecb9 [Camel-19462] fixed maven plugin validation issues (#901)
c065180ecb9 is described below

commit c065180ecb9d8faf4ccf3913eeeffb4e8fdf6520
Author: Jono Morris <[email protected]>
AuthorDate: Sat Aug 5 03:14:33 2023 +1200

    [Camel-19462] fixed maven plugin validation issues (#901)
    
    * CAMEL-19462 remove redundant EOL dependency
    
    * CAMEL-19462 remove redundant maven 2.x compatibility layer
    
    * CAMEL-19462 resolve artifacts using maven-artifact-transfer
    
    * CAMEL-19462 remove read-only from parameters
---
 .../pom.xml                                        | 10 +++-----
 .../maven/BomDependenciesGeneratorMojo.java        | 27 +++++++++++++++++-----
 2 files changed, 24 insertions(+), 13 deletions(-)

diff --git a/tooling/camel-spring-boot-generator-maven-plugin/pom.xml 
b/tooling/camel-spring-boot-generator-maven-plugin/pom.xml
index 2d57c936013..88ac6e4697c 100644
--- a/tooling/camel-spring-boot-generator-maven-plugin/pom.xml
+++ b/tooling/camel-spring-boot-generator-maven-plugin/pom.xml
@@ -108,19 +108,15 @@
             <version>${maven-plugin-plugin-version}</version>
         </dependency>
         <dependency>
-            <groupId>org.apache.maven</groupId>
-            <artifactId>maven-compat</artifactId>
-            <version>${maven-version}</version>
+            <groupId>org.apache.maven.shared</groupId>
+            <artifactId>maven-artifact-transfer</artifactId>
+            <version>0.13.1</version>
         </dependency>
         <dependency>
             <groupId>org.apache.maven.shared</groupId>
             <artifactId>maven-dependency-tree</artifactId>
             <version>3.1.0</version>
         </dependency>
-        <dependency>
-            <groupId>org.codehaus.plexus</groupId>
-            <artifactId>plexus-container-default</artifactId>
-        </dependency>
         <dependency>
             <groupId>org.codehaus.plexus</groupId>
             <artifactId>plexus-utils</artifactId>
diff --git 
a/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/BomDependenciesGeneratorMojo.java
 
b/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/BomDependenciesGeneratorMojo.java
index 8744a43ecd9..2dec41fd58d 100644
--- 
a/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/BomDependenciesGeneratorMojo.java
+++ 
b/tooling/camel-spring-boot-generator-maven-plugin/src/main/java/org/apache/camel/springboot/maven/BomDependenciesGeneratorMojo.java
@@ -52,7 +52,7 @@ import org.apache.commons.io.IOUtils;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.resolver.ArtifactResolver;
+import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.Dependency;
 import org.apache.maven.model.DependencyManagement;
 import org.apache.maven.model.Exclusion;
@@ -65,7 +65,10 @@ import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.LifecyclePhase;
 import org.apache.maven.plugins.annotations.Mojo;
 import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.project.DefaultProjectBuildingRequest;
 import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.ProjectBuildingRequest;
+import org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolver;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
@@ -83,6 +86,12 @@ public class BomDependenciesGeneratorMojo extends 
AbstractMojo {
     @Parameter(defaultValue = "${project}", readonly = true)
     protected MavenProject project;
 
+    /**
+     * The maven session.
+     */
+    @Parameter(defaultValue = "${session}", required = true, readonly = true)
+    private MavenSession session;
+
     /**
      * The source pom template file.
      */
@@ -99,13 +108,13 @@ public class BomDependenciesGeneratorMojo extends 
AbstractMojo {
     /**
      * The user configuration
      */
-    @Parameter(readonly = true)
+    @Parameter
     protected DependencySet dependencies;
 
     /**
      * The conflict checks configured by the user
      */
-    @Parameter(readonly = true)
+    @Parameter
     protected ExternalBomConflictCheckSet checkConflicts;
 
     /**
@@ -124,7 +133,7 @@ public class BomDependenciesGeneratorMojo extends 
AbstractMojo {
      * List of Remote Repositories used by the resolver
      */
     @Parameter(property = "project.remoteArtifactRepositories", readonly = 
true, required = true)
-    protected List remoteRepositories;
+    protected List<ArtifactRepository> remoteRepositories;
 
     /**
      * Location of the local repository.
@@ -559,9 +568,15 @@ public class BomDependenciesGeneratorMojo extends 
AbstractMojo {
 
         Artifact art = artifactFactory.createArtifact(groupId, artifactId, 
version, "runtime", type);
 
-        artifactResolver.resolve(art, remoteRepositories, localRepository);
+        ProjectBuildingRequest buildingRequest =
+                new 
DefaultProjectBuildingRequest(session.getProjectBuildingRequest());
+        buildingRequest
+                .setRemoteRepositories(remoteRepositories)
+                .setLocalRepository(localRepository);
 
-        return art;
+        return artifactResolver
+                .resolveArtifact(buildingRequest, art)
+                .getArtifact();
     }
 
     private MavenProject loadExternalProjectPom(File pomFile) throws Exception 
{

Reply via email to