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

slachiewicz pushed a commit to branch dropOldPlexus3
in repository https://gitbox.apache.org/repos/asf/maven-site-plugin.git

commit 944501c206c8f8ea9bba060b37bcc3b7cf899a28
Author: Sylwester Lachiewicz <[email protected]>
AuthorDate: Sun Oct 19 17:08:15 2025 +0200

    Drop old Plexus and replace with org.eclipse.sisu.plexus
---
 pom.xml                                            |  5 ++--
 .../maven/plugins/site/AbstractSiteMojo.java       |  7 ++---
 .../plugins/site/deploy/AbstractDeployMojo.java    | 31 +++++++++++-----------
 .../descriptor/AbstractSiteDescriptorMojo.java     |  5 ++--
 .../site/descriptor/SiteDescriptorAttachMojo.java  |  5 ++--
 .../site/render/AbstractSiteRenderingMojo.java     | 13 ++++-----
 .../maven/plugins/site/render/SiteJarMojo.java     |  9 ++++---
 7 files changed, 40 insertions(+), 35 deletions(-)

diff --git a/pom.xml b/pom.xml
index 1774946c..c42c3965 100644
--- a/pom.xml
+++ b/pom.xml
@@ -301,9 +301,8 @@ under the License.
 
     <!-- Plexus -->
     <dependency>
-      <groupId>org.sonatype.sisu</groupId>
-      <artifactId>sisu-inject-plexus</artifactId>
-      <version>1.4.2</version>
+      <groupId>org.eclipse.sisu</groupId>
+      <artifactId>org.eclipse.sisu.plexus</artifactId>
       <scope>provided</scope>
     </dependency>
 
diff --git a/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java 
b/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java
index 44fe1adb..fd46043d 100644
--- a/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java
+++ b/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java
@@ -23,11 +23,12 @@ import java.util.Locale;
 
 import org.apache.maven.doxia.tools.SiteTool;
 import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.i18n.I18N;
 
+import javax.inject.Inject;
+
 /**
  * Base class for site mojos.
  *
@@ -54,13 +55,13 @@ public abstract class AbstractSiteMojo extends AbstractMojo 
{
     /**
      * SiteTool.
      */
-    @Component
+    @Inject
     protected SiteTool siteTool;
 
     /**
      * Internationalization.
      */
-    @Component
+    @Inject
     protected I18N i18n;
 
     /**
diff --git 
a/src/main/java/org/apache/maven/plugins/site/deploy/AbstractDeployMojo.java 
b/src/main/java/org/apache/maven/plugins/site/deploy/AbstractDeployMojo.java
index 204f2fc6..f8bab15f 100644
--- a/src/main/java/org/apache/maven/plugins/site/deploy/AbstractDeployMojo.java
+++ b/src/main/java/org/apache/maven/plugins/site/deploy/AbstractDeployMojo.java
@@ -23,6 +23,7 @@ import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.List;
 import java.util.Locale;
+import java.util.Map;
 
 import org.apache.maven.doxia.site.inheritance.URIPathDescriptor;
 import org.apache.maven.doxia.tools.SiteTool;
@@ -31,7 +32,6 @@ import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.DistributionManagement;
 import org.apache.maven.model.Site;
 import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.plugins.site.AbstractSiteMojo;
 import org.apache.maven.project.MavenProject;
@@ -53,8 +53,8 @@ import 
org.apache.maven.wagon.authorization.AuthorizationException;
 import org.apache.maven.wagon.observers.Debug;
 import org.apache.maven.wagon.proxy.ProxyInfo;
 import org.apache.maven.wagon.repository.Repository;
-import org.codehaus.plexus.PlexusContainer;
-import 
org.codehaus.plexus.component.repository.exception.ComponentLookupException;
+
+import javax.inject.Inject;
 
 /**
  * Abstract base class for deploy mojos.
@@ -123,10 +123,10 @@ public abstract class AbstractDeployMojo extends 
AbstractSiteMojo {
 
     private Site deploySite;
 
-    @Component
-    private PlexusContainer container;
+    @Inject
+    private Map<String, Wagon> wagons;
 
-    @Component
+    @Inject
     SettingsDecrypter settingsDecrypter;
 
     /**
@@ -277,16 +277,15 @@ public abstract class AbstractDeployMojo extends 
AbstractSiteMojo {
         if (protocol == null) {
             throw new MojoExecutionException("Unspecified protocol");
         }
-        try {
-            Wagon wagon = container.lookup(Wagon.class, 
protocol.toLowerCase(Locale.ROOT));
-            if (!wagon.supportsDirectoryCopy()) {
-                throw new MojoExecutionException(
-                        "Wagon protocol '" + repository.getProtocol() + "' 
doesn't support directory copying");
-            }
-            return wagon;
-        } catch (ComponentLookupException e) {
-            throw new MojoExecutionException("Cannot find wagon which supports 
the requested protocol: " + protocol, e);
+        Wagon wagon = wagons.get(protocol.toLowerCase(Locale.ROOT));
+        if (wagon == null) {
+            throw new MojoExecutionException("Cannot find wagon which supports 
the requested protocol: " + protocol);
+        }
+        if (!wagon.supportsDirectoryCopy()) {
+            throw new MojoExecutionException(
+                    "Wagon protocol '" + repository.getProtocol() + "' doesn't 
support directory copying");
         }
+        return wagon;
     }
 
     public AuthenticationInfo getAuthenticationInfo(String id) {
@@ -558,7 +557,7 @@ public abstract class AbstractDeployMojo extends 
AbstractSiteMojo {
                     uri.append(c);
                 } else {
                     uri.append('%');
-                    uri.append(Integer.toHexString((int) c));
+                    uri.append(Integer.toHexString(c));
                 }
             }
             return uri.toString();
diff --git 
a/src/main/java/org/apache/maven/plugins/site/descriptor/AbstractSiteDescriptorMojo.java
 
b/src/main/java/org/apache/maven/plugins/site/descriptor/AbstractSiteDescriptorMojo.java
index 3f8e55d6..4d98f022 100644
--- 
a/src/main/java/org/apache/maven/plugins/site/descriptor/AbstractSiteDescriptorMojo.java
+++ 
b/src/main/java/org/apache/maven/plugins/site/descriptor/AbstractSiteDescriptorMojo.java
@@ -27,13 +27,14 @@ import 
org.apache.maven.doxia.site.inheritance.SiteModelInheritanceAssembler;
 import org.apache.maven.doxia.tools.SiteTool;
 import org.apache.maven.doxia.tools.SiteToolException;
 import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.plugins.site.AbstractSiteMojo;
 import org.apache.maven.project.MavenProject;
 import org.eclipse.aether.RepositorySystemSession;
 import org.eclipse.aether.repository.RemoteRepository;
 
+import javax.inject.Inject;
+
 /**
  * Abstract class to compute effective site model for site descriptors.
  *
@@ -43,7 +44,7 @@ public abstract class AbstractSiteDescriptorMojo extends 
AbstractSiteMojo {
     /**
      * The component for assembling site model inheritance.
      */
-    @Component
+    @Inject
     private SiteModelInheritanceAssembler assembler;
 
     /**
diff --git 
a/src/main/java/org/apache/maven/plugins/site/descriptor/SiteDescriptorAttachMojo.java
 
b/src/main/java/org/apache/maven/plugins/site/descriptor/SiteDescriptorAttachMojo.java
index 9459567b..ab5b7cfb 100644
--- 
a/src/main/java/org/apache/maven/plugins/site/descriptor/SiteDescriptorAttachMojo.java
+++ 
b/src/main/java/org/apache/maven/plugins/site/descriptor/SiteDescriptorAttachMojo.java
@@ -23,7 +23,6 @@ import java.io.IOException;
 import java.util.Locale;
 
 import org.apache.maven.plugin.MojoExecutionException;
-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;
@@ -31,6 +30,8 @@ import org.apache.maven.project.MavenProjectHelper;
 import org.apache.maven.shared.utils.PathTool;
 import org.codehaus.plexus.util.FileUtils;
 
+import javax.inject.Inject;
+
 /**
  * Adds the site descriptor (<code>site.xml</code>) to the list of files to be 
installed/deployed.
  * <p>For Maven-2.x this is enabled by default only when the project has 
<code>pom</code> packaging since it will be
@@ -55,7 +56,7 @@ public class SiteDescriptorAttachMojo extends 
AbstractSiteDescriptorMojo {
      *
      * @since 2.1.1
      */
-    @Component
+    @Inject
     private MavenProjectHelper projectHelper;
 
     /**
diff --git 
a/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java
 
b/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java
index 1030d63c..c0401bb9 100644
--- 
a/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java
+++ 
b/src/main/java/org/apache/maven/plugins/site/render/AbstractSiteRenderingMojo.java
@@ -20,6 +20,7 @@ package org.apache.maven.plugins.site.render;
 
 import java.io.File;
 import java.io.IOException;
+import java.nio.charset.Charset;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Date;
@@ -49,7 +50,6 @@ import org.apache.maven.model.Reporting;
 import org.apache.maven.plugin.MojoExecution;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
-import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.plugins.site.descriptor.AbstractSiteDescriptorMojo;
 import org.apache.maven.reporting.MavenReport;
@@ -57,7 +57,8 @@ import org.apache.maven.reporting.MavenReportException;
 import org.apache.maven.reporting.exec.MavenReportExecution;
 import org.apache.maven.reporting.exec.MavenReportExecutor;
 import org.apache.maven.reporting.exec.MavenReportExecutorRequest;
-import org.codehaus.plexus.util.ReaderFactory;
+
+import javax.inject.Inject;
 
 import static org.apache.maven.shared.utils.logging.MessageUtils.buffer;
 
@@ -97,7 +98,7 @@ public abstract class AbstractSiteRenderingMojo extends 
AbstractSiteDescriptorMo
     /**
      * Site renderer.
      */
-    @Component
+    @Inject
     protected SiteRenderer siteRenderer;
 
     /**
@@ -176,7 +177,7 @@ public abstract class AbstractSiteRenderingMojo extends 
AbstractSiteDescriptorMo
     @Parameter(defaultValue = "${project.build.outputTimestamp}")
     protected String outputTimestamp;
 
-    @Component
+    @Inject
     protected MavenReportExecutor mavenReportExecutor;
 
     /**
@@ -185,7 +186,7 @@ public abstract class AbstractSiteRenderingMojo extends 
AbstractSiteDescriptorMo
      * @return The input files encoding, never <code>null</code>.
      */
     protected String getInputEncoding() {
-        return (inputEncoding == null || inputEncoding.isEmpty()) ? 
ReaderFactory.FILE_ENCODING : inputEncoding;
+        return (inputEncoding == null || inputEncoding.isEmpty()) ? 
Charset.defaultCharset().displayName() : inputEncoding;
     }
 
     /**
@@ -208,7 +209,7 @@ public abstract class AbstractSiteRenderingMojo extends 
AbstractSiteDescriptorMo
 
     protected void checkInputEncoding() {
         if (inputEncoding == null || inputEncoding.isEmpty()) {
-            getLog().warn("Input file encoding has not been set, using 
platform encoding " + ReaderFactory.FILE_ENCODING
+            getLog().warn("Input file encoding has not been set, using 
platform encoding " + Charset.defaultCharset().displayName()
                     + ", i.e. build is platform dependent!");
         }
     }
diff --git 
a/src/main/java/org/apache/maven/plugins/site/render/SiteJarMojo.java 
b/src/main/java/org/apache/maven/plugins/site/render/SiteJarMojo.java
index 9f3168b2..4f348997 100644
--- a/src/main/java/org/apache/maven/plugins/site/render/SiteJarMojo.java
+++ b/src/main/java/org/apache/maven/plugins/site/render/SiteJarMojo.java
@@ -26,7 +26,6 @@ import org.apache.maven.archiver.MavenArchiver;
 import org.apache.maven.artifact.DependencyResolutionRequiredException;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
-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;
@@ -37,6 +36,9 @@ import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.jar.JarArchiver;
 import org.codehaus.plexus.archiver.jar.ManifestException;
 
+import javax.inject.Inject;
+import javax.inject.Named;
+
 /**
  * Bundles the site output into a JAR so that it can be deployed to a 
repository.
  *
@@ -72,7 +74,7 @@ public class SiteJarMojo extends SiteMojo {
     /**
      * Used for attaching the artifact in the project.
      */
-    @Component
+    @Inject
     private MavenProjectHelper projectHelper;
 
     /**
@@ -86,7 +88,8 @@ public class SiteJarMojo extends SiteMojo {
      *
      * @since 3.1
      */
-    @Component(role = Archiver.class, hint = "jar")
+    @Inject
+    @Named("jar")
     private JarArchiver jarArchiver;
 
     /**

Reply via email to