You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2022/01/02 20:16:55 UTC

[maven-dist-tool] branch master updated (fffa4de -> 3e827b5)

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

hboutemy pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dist-tool.git.


    from fffa4de  revert
     new 62afd0b  scope = provided for artifacts provided by Maven core
     new 652f7bb  rename methods
     new def65b7  refactor to ease testing
     new 3e827b5  rewrite skin recognition + add unit test

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .gitignore                                         |   1 +
 pom.xml                                            |   5 +
 .../maven/dist/tools/AbstractDistCheckReport.java  |  10 +-
 .../maven/dist/tools/site/CheckSiteResult.java     |  67 +++--
 .../maven/dist/tools/site/DistCheckSiteReport.java |  13 +-
 .../apache/maven/dist/tools/site/HTMLChecker.java  |   6 +-
 .../tools/site/checkers/FluidoHTMLChecker.java     |   2 +-
 .../tools/site/checkers/StylusLeftHTMLChecker.java |   2 +-
 .../site/checkers/StylusRightHTMLChecker.java      |   2 +-
 .../maven/dist/tools/site/SiteReportTest.java      |  58 +++++
 .../org/apache/maven/dist/tools/site/fluido.html   | 270 +++++++++++++++++++++
 .../apache/maven/dist/tools/site/stylus-right.html | 234 ++++++++++++++++++
 12 files changed, 614 insertions(+), 56 deletions(-)
 create mode 100644 src/test/java/org/apache/maven/dist/tools/site/SiteReportTest.java
 create mode 100644 src/test/resources/org/apache/maven/dist/tools/site/fluido.html
 create mode 100644 src/test/resources/org/apache/maven/dist/tools/site/stylus-right.html

[maven-dist-tool] 03/04: refactor to ease testing

Posted by hb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dist-tool.git

commit def65b74090ea053b115831422b8648031c2ade8
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Sun Jan 2 20:59:22 2022 +0100

    refactor to ease testing
---
 .../maven/dist/tools/AbstractDistCheckReport.java  | 10 ++--
 .../maven/dist/tools/site/CheckSiteResult.java     | 59 ++++++++++++----------
 .../maven/dist/tools/site/DistCheckSiteReport.java |  6 +--
 3 files changed, 39 insertions(+), 36 deletions(-)

diff --git a/src/main/java/org/apache/maven/dist/tools/AbstractDistCheckReport.java b/src/main/java/org/apache/maven/dist/tools/AbstractDistCheckReport.java
index af8904a..8e2dde5 100644
--- a/src/main/java/org/apache/maven/dist/tools/AbstractDistCheckReport.java
+++ b/src/main/java/org/apache/maven/dist/tools/AbstractDistCheckReport.java
@@ -344,7 +344,7 @@ public abstract class AbstractDistCheckReport
      *
      * @param sink doxiasink
      */
-    public void iconError( Sink sink )
+    public static void iconError( Sink sink )
     {
         icon( sink, "icon_error_sml" );
     }
@@ -354,7 +354,7 @@ public abstract class AbstractDistCheckReport
      *
      * @param sink doxiasink
      */
-    public void iconWarning( Sink sink )
+    public static void iconWarning( Sink sink )
     {
         icon( sink, "icon_warning_sml" );
     }
@@ -364,7 +364,7 @@ public abstract class AbstractDistCheckReport
      *
      * @param sink doxiasink
      */
-    public void iconSuccess( Sink sink )
+    public static void iconSuccess( Sink sink )
     {
         icon( sink, "icon_success_sml" );
     }
@@ -374,12 +374,12 @@ public abstract class AbstractDistCheckReport
      *
      * @param sink doxiasink
      */
-    protected void iconRemove( Sink sink )
+    protected static void iconRemove( Sink sink )
     {
         icon( sink, "remove" );
     }
 
-    private void icon( Sink sink, String level )
+    private static void icon( Sink sink, String level )
     {
         sink.figure();
         sink.figureCaption();
diff --git a/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java b/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
index 48f57d7..92bbf88 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
@@ -23,6 +23,7 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.maven.dist.tools.AbstractCheckResult;
+import org.apache.maven.dist.tools.AbstractDistCheckReport;
 import org.apache.maven.dist.tools.ConfigurationLineInfo;
 import org.apache.maven.doxia.sink.Sink;
 import org.jsoup.nodes.Comment;
@@ -34,21 +35,19 @@ import org.jsoup.select.Elements;
 class CheckSiteResult
     extends AbstractCheckResult
 {
-
-    /**
-     * 
-     */
-    private final DistCheckSiteReport distCheckSiteMojo;
     private String url;
+
     private Map<HTMLChecker, Boolean> checkMap = new HashMap<>();
+
     private int statusCode = -1;
-    private Document document;
+
+    private String comment;
+
     private String screenshotName;
 
-    CheckSiteResult( DistCheckSiteReport distCheckSiteMojo, ConfigurationLineInfo r, String version )
+    CheckSiteResult( ConfigurationLineInfo r, String version )
     {
         super( r, version );
-        this.distCheckSiteMojo = distCheckSiteMojo;
     }
 
     void setUrl( String url )
@@ -93,21 +92,6 @@ class CheckSiteResult
         }
         else 
         {
-            String text = "";
-            Elements htmlTags = document.select( "html " );
-            for ( Element htmlTag : htmlTags )
-            {
-                Node n = htmlTag.previousSibling();
-                if ( n instanceof Comment )
-                {
-                    text += ( ( Comment ) n ).getData();
-                }
-                else
-                {
-                    text += " ";
-                }
-            }
-
             sink.text( "skin: " );
             if ( isSkin( "Fluido" ) )
             {
@@ -122,7 +106,7 @@ class CheckSiteResult
                 sink.text( "Not determined" );
             }
             sink.verbatim( null );
-            sink.text( text.trim().replace( " |", "|" ).replace( "| ", "" ) );
+            sink.text( comment.trim().replace( " |", "|" ).replace( "| ", "" ) );
             sink.verbatim_();
         }
     }
@@ -131,7 +115,7 @@ class CheckSiteResult
     {
         if ( statusCode != DistCheckSiteReport.HTTP_OK )
         {
-            this.distCheckSiteMojo.iconError( sink );
+            AbstractDistCheckReport.iconError( sink );
         }
         else
         {
@@ -140,14 +124,14 @@ class CheckSiteResult
             {
                 if ( e.getValue() )
                 {
-                    this.distCheckSiteMojo.iconSuccess( sink );
+                    AbstractDistCheckReport.iconSuccess( sink );
                     sink.text( ": " + e.getKey().getName() );
                     found = true;
                 }
             }
             if ( !found )
             {
-                this.distCheckSiteMojo.iconWarning( sink );
+                AbstractDistCheckReport.iconWarning( sink );
                 sink.text( ": artifact version not found" );
             }
         }
@@ -168,10 +152,29 @@ class CheckSiteResult
 
     void setDocument( Document doc )
     {
-        this.document = doc ;
+        comment = extractComment( doc );
         statusCode = ( doc == null ) ? -1 : DistCheckSiteReport.HTTP_OK;
     }
 
+    static String extractComment( Document document )
+    {
+        String text = "";
+        Elements htmlTags = document.select( "html " );
+        for ( Element htmlTag : htmlTags )
+        {
+            Node n = htmlTag.previousSibling();
+            if ( n instanceof Comment )
+            {
+                text += ( ( Comment ) n ).getData();
+            }
+            else
+            {
+                text += " ";
+            }
+        }
+        return text;
+    }
+
     void setScreenShot( String fileName )
     {
         this.screenshotName = fileName;
diff --git a/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java b/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java
index ed878b8..7fa9a02 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java
@@ -104,7 +104,7 @@ public class DistCheckSiteReport
 
     // keep result
     private List<CheckSiteResult> results = new LinkedList<>();
-    private final List<HTMLChecker> checker = HTMLCheckerFactory.getCheckers();
+    private final List<HTMLChecker> checkers = HTMLCheckerFactory.getCheckers();
 
     @Override
     protected void executeReport( Locale locale )
@@ -227,7 +227,7 @@ public class DistCheckSiteReport
 
     private void checkSite( ConfigurationLineInfo cli, String version )
     {
-        CheckSiteResult result = new CheckSiteResult( this, cli, version );
+        CheckSiteResult result = new CheckSiteResult( cli, version );
         results.add( result );
         try
         {
@@ -248,7 +248,7 @@ public class DistCheckSiteReport
 
             result.setUrl( siteUrl );
             Document doc = JsoupRetry.get( siteUrl );
-            for ( HTMLChecker c : checker )
+            for ( HTMLChecker c : checkers )
             {
                 result.getCheckMap().put( c, c.isDisplayedArtifactVersionOk( doc, version ) );
             }

[maven-dist-tool] 02/04: rename methods

Posted by hb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dist-tool.git

commit 652f7bb71e13205209e75d4f19eaabb0a7ce98a5
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Sun Jan 2 19:51:29 2022 +0100

    rename methods
---
 .../java/org/apache/maven/dist/tools/site/CheckSiteResult.java | 10 +++++-----
 .../org/apache/maven/dist/tools/site/DistCheckSiteReport.java  |  7 ++++---
 .../java/org/apache/maven/dist/tools/site/HTMLChecker.java     |  6 +++---
 .../maven/dist/tools/site/checkers/FluidoHTMLChecker.java      |  2 +-
 .../maven/dist/tools/site/checkers/StylusLeftHTMLChecker.java  |  2 +-
 .../maven/dist/tools/site/checkers/StylusRightHTMLChecker.java |  2 +-
 6 files changed, 15 insertions(+), 14 deletions(-)

diff --git a/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java b/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
index 8282216..48f57d7 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
@@ -85,7 +85,7 @@ class CheckSiteResult
         return statusCode;
     }
 
-    void getSkins( Sink sink )
+    void renderDetectedSkin( Sink sink )
     {
         if ( statusCode != DistCheckSiteReport.HTTP_OK )
         {
@@ -94,10 +94,10 @@ class CheckSiteResult
         else 
         {
             String text = "";
-            Elements htmlTag = document.select( "html " );
-            for ( Element htmlTa : htmlTag )
+            Elements htmlTags = document.select( "html " );
+            for ( Element htmlTag : htmlTags )
             {
-                Node n = htmlTa.previousSibling();
+                Node n = htmlTag.previousSibling();
                 if ( n instanceof Comment )
                 {
                     text += ( ( Comment ) n ).getData();
@@ -127,7 +127,7 @@ class CheckSiteResult
         }
     }
 
-    void getOverall( Sink sink )
+    void renderDisplayedArtifactVersion( Sink sink )
     {
         if ( statusCode != DistCheckSiteReport.HTTP_OK )
         {
diff --git a/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java b/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java
index 24f46ce..ed878b8 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/DistCheckSiteReport.java
@@ -39,6 +39,7 @@ import org.apache.maven.project.MavenProjectBuilder;
 import org.apache.maven.reporting.MavenReportException;
 import org.jsoup.HttpStatusException;
 import org.jsoup.nodes.Document;
+
 /**
  *
  * @author skygo
@@ -204,11 +205,11 @@ public class DistCheckSiteReport
             sink.rawText( getSimplifiedUrl( csr.getUrl() ) );
             sink.link_();
             sink.lineBreak();
-            csr.getSkins( sink );
+            csr.renderDetectedSkin( sink );
             sink.tableCell_();
 
             sink.tableCell();
-            csr.getOverall( sink );
+            csr.renderDisplayedArtifactVersion( sink );
             sink.tableCell_();
 
             sink.tableRow_();
@@ -249,7 +250,7 @@ public class DistCheckSiteReport
             Document doc = JsoupRetry.get( siteUrl );
             for ( HTMLChecker c : checker )
             {
-                result.getCheckMap().put( c, c.isOk( doc, version ) );
+                result.getCheckMap().put( c, c.isDisplayedArtifactVersionOk( doc, version ) );
             }
             result.setDocument( doc );
 
diff --git a/src/main/java/org/apache/maven/dist/tools/site/HTMLChecker.java b/src/main/java/org/apache/maven/dist/tools/site/HTMLChecker.java
index 90a5bae..fc66a63 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/HTMLChecker.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/HTMLChecker.java
@@ -36,19 +36,19 @@ public interface HTMLChecker
     String getName();
 
     /**
-     * Get an id representing sink.
+     * Get an id representing skin.
      * 
      * @return string for skin
      */
     String getSkin();
 
     /**
-     * true if checker find pattern in document
+     * Checks if the documents represents the provided artifact version.
      *
      * @param doc html document
      * @param version version to check against
      * @return true if version is found
      */
-    boolean isOk( Document doc, String version );
+    boolean isDisplayedArtifactVersionOk( Document doc, String version );
     
 }
diff --git a/src/main/java/org/apache/maven/dist/tools/site/checkers/FluidoHTMLChecker.java b/src/main/java/org/apache/maven/dist/tools/site/checkers/FluidoHTMLChecker.java
index e47cedf..2ae7d5c 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/checkers/FluidoHTMLChecker.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/checkers/FluidoHTMLChecker.java
@@ -44,7 +44,7 @@ public class FluidoHTMLChecker implements HTMLChecker
     }
 
     @Override
-    public boolean isOk( Document doc, String version )
+    public boolean isDisplayedArtifactVersionOk( Document doc, String version )
     {
         Element links = doc.select( "li#projectVersion" ).first();
         return ( links != null ) && links.text().contains( version );
diff --git a/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusLeftHTMLChecker.java b/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusLeftHTMLChecker.java
index 22e66ec..4d2cc50 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusLeftHTMLChecker.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusLeftHTMLChecker.java
@@ -44,7 +44,7 @@ public class StylusLeftHTMLChecker implements HTMLChecker
     }
 
     @Override
-    public boolean isOk( Document doc, String version )
+    public boolean isDisplayedArtifactVersionOk( Document doc, String version )
     {
         Element links = doc.select( "div.xleft" ).first();
 
diff --git a/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusRightHTMLChecker.java b/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusRightHTMLChecker.java
index 16d0f56..b3a790e 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusRightHTMLChecker.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/checkers/StylusRightHTMLChecker.java
@@ -44,7 +44,7 @@ public class StylusRightHTMLChecker implements HTMLChecker
     }
 
     @Override
-    public boolean isOk( Document doc, String version )
+    public boolean isDisplayedArtifactVersionOk( Document doc, String version )
     {
         Element links = doc.select( "div.xright" ).first();
 

[maven-dist-tool] 04/04: rewrite skin recognition + add unit test

Posted by hb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dist-tool.git

commit 3e827b5dca4da59f4e633bfd6877cbb75f23a3f2
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Sun Jan 2 21:16:53 2022 +0100

    rewrite skin recognition + add unit test
---
 .../maven/dist/tools/site/CheckSiteResult.java     |  26 +-
 .../maven/dist/tools/site/SiteReportTest.java      |  58 +++++
 .../org/apache/maven/dist/tools/site/fluido.html   | 270 +++++++++++++++++++++
 .../apache/maven/dist/tools/site/stylus-right.html | 234 ++++++++++++++++++
 4 files changed, 568 insertions(+), 20 deletions(-)

diff --git a/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java b/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
index 92bbf88..e01eb82 100644
--- a/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
+++ b/src/main/java/org/apache/maven/dist/tools/site/CheckSiteResult.java
@@ -139,15 +139,7 @@ class CheckSiteResult
 
     private boolean isSkin( String skinName )
     {
-        boolean tmp = false;
-        for ( Map.Entry<HTMLChecker, Boolean> e : checkMap.entrySet() )
-        {
-            if ( e.getKey().getSkin().equals( skinName ) )
-            {
-                tmp = tmp || e.getValue();
-            }
-        }
-        return tmp;
+        return comment.contains( skinName );
     }
 
     void setDocument( Document doc )
@@ -158,21 +150,15 @@ class CheckSiteResult
 
     static String extractComment( Document document )
     {
-        String text = "";
-        Elements htmlTags = document.select( "html " );
-        for ( Element htmlTag : htmlTags )
+        for ( Node node : document.childNodes() )
         {
-            Node n = htmlTag.previousSibling();
-            if ( n instanceof Comment )
+            if ( node instanceof Comment )
             {
-                text += ( ( Comment ) n ).getData();
-            }
-            else
-            {
-                text += " ";
+                return ( ( Comment ) node ).getData();
             }
         }
-        return text;
+
+        return "";
     }
 
     void setScreenShot( String fileName )
diff --git a/src/test/java/org/apache/maven/dist/tools/site/SiteReportTest.java b/src/test/java/org/apache/maven/dist/tools/site/SiteReportTest.java
new file mode 100644
index 0000000..6436dfe
--- /dev/null
+++ b/src/test/java/org/apache/maven/dist/tools/site/SiteReportTest.java
@@ -0,0 +1,58 @@
+package org.apache.maven.dist.tools.site;
+
+/*
+ * Copyright 2013 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import static org.junit.Assert.assertTrue;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import org.jsoup.Jsoup;
+import org.jsoup.nodes.Document;
+import org.junit.Test;
+
+/**
+ *
+ */
+public class SiteReportTest
+{
+    private String readDocument( String resource )
+        throws IOException
+    {
+        try ( InputStream in = getClass().getResourceAsStream( resource ) )
+        {
+            Document doc = Jsoup.parse( in, "UTF-8", "https://maven.apache.org/archetype/" );
+            return CheckSiteResult.extractComment( doc );
+        }
+    }
+
+    @Test
+    public void testFluidoSkin()
+        throws IOException
+    {
+        String comment = readDocument( "fluido.html" );
+        assertTrue( comment.contains( "Fluido" ) );
+    } 
+
+    @Test
+    public void testStylusRightSkin()
+        throws IOException
+    {
+        String comment = readDocument( "stylus-right.html" );
+        assertTrue( comment.contains( "Stylus" ) );
+    }
+}
diff --git a/src/test/resources/org/apache/maven/dist/tools/site/fluido.html b/src/test/resources/org/apache/maven/dist/tools/site/fluido.html
new file mode 100644
index 0000000..3313533
--- /dev/null
+++ b/src/test/resources/org/apache/maven/dist/tools/site/fluido.html
@@ -0,0 +1,270 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia Site Renderer 1.8.1 from src/site/apt/index.apt at 2021-12-27
+ | Rendered using Apache Maven Fluido Skin 1.7
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="author" content="Jason van Zyl" />
+    <meta name="Date-Creation-yyyymmdd" content="20090826" />
+    <meta name="Date-Revision-yyyymmdd" content="20211227" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Maven Archetype &#x2013; About</title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.7.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.7.min.js"></script>
+    <!-- Google Analytics -->
+    <script type="text/javascript">
+      var _gaq = _gaq || [];
+      _gaq.push(['_setAccount', 'UA-140879-1']);
+      _gaq.push(['_trackPageview']);
+      (function() {
+        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+      })();
+    </script>
+  </head>
+  <body class="topBarEnabled">
+    <a href="https://github.com/apache/maven-archetype">
+      <img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10000;"
+        src="https://s3.amazonaws.com/github/ribbons/forkme_right_gray_6d6d6d.png"
+        alt="Fork me on GitHub">
+    </a>
+    <div id="topbar" class="navbar navbar-fixed-top ">
+      <div class="navbar-inner">
+        <div class="container-fluid">
+        <a data-target=".nav-collapse" data-toggle="collapse" class="btn btn-navbar">
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+          <span class="icon-bar"></span>
+        </a>
+            <ul class="nav">
+      <li class="dropdown">
+        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Overview <b class="caret"></b></a>
+        <ul class="dropdown-menu">
+            <li><a href="index.html" title="Introduction">Introduction</a></li>
+            <li><a href="maven-archetype-plugin/index.html" title="Maven Archetype Plugin">Maven Archetype Plugin</a></li>
+            <li><a href="http://www.apache.org/licenses/" title="License">License</a></li>
+            <li><a href="download.html" title="Download">Download</a></li>
+        </ul>
+      </li>
+      <li class="dropdown">
+        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Modules <b class="caret"></b></a>
+        <ul class="dropdown-menu">
+            <li><a href="archetype-models/index.html" title="Maven Archetype Models">Maven Archetype Models</a></li>
+            <li><a href="archetype-common/index.html" title="Maven Archetype Common">Maven Archetype Common</a></li>
+            <li><a href="maven-archetype-plugin/index.html" title="Maven Archetype Plugin">Maven Archetype Plugin</a></li>
+            <li><a href="archetype-packaging/index.html" title="Maven Archetype Packaging">Maven Archetype Packaging</a></li>
+        </ul>
+      </li>
+      <li class="dropdown">
+        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Project Documentation <b class="caret"></b></a>
+        <ul class="dropdown-menu">
+            <li class="dropdown-submenu">
+<a href="project-info.html" title="Project Information">Project Information</a>
+              <ul class="dropdown-menu">
+                  <li><a href="index.html" title="About">About</a></li>
+                  <li><a href="summary.html" title="Summary">Summary</a></li>
+                  <li><a href="dependency-info.html" title="Dependency Information">Dependency Information</a></li>
+                  <li><a href="modules.html" title="Project Modules">Project Modules</a></li>
+                  <li><a href="team.html" title="Team">Team</a></li>
+                  <li><a href="scm.html" title="Source Code Management">Source Code Management</a></li>
+                  <li><a href="issue-management.html" title="Issue Management">Issue Management</a></li>
+                  <li><a href="mailing-lists.html" title="Mailing Lists">Mailing Lists</a></li>
+                  <li><a href="dependency-management.html" title="Dependency Management">Dependency Management</a></li>
+                  <li><a href="dependency-convergence.html" title="Dependency Convergence">Dependency Convergence</a></li>
+                  <li><a href="ci-management.html" title="CI Management">CI Management</a></li>
+                  <li><a href="plugin-management.html" title="Plugin Management">Plugin Management</a></li>
+                  <li><a href="plugins.html" title="Plugins">Plugins</a></li>
+                  <li><a href="distribution-management.html" title="Distribution Management">Distribution Management</a></li>
+              </ul>
+            </li>
+            <li class="dropdown-submenu">
+<a href="project-reports.html" title="Project Reports">Project Reports</a>
+              <ul class="dropdown-menu">
+                  <li><a href="surefire-report.html" title="Surefire Report">Surefire Report</a></li>
+              </ul>
+            </li>
+        </ul>
+      </li>
+      <li class="dropdown">
+        <a href="#" class="dropdown-toggle" data-toggle="dropdown">Maven Projects <b class="caret"></b></a>
+        <ul class="dropdown-menu">
+            <li><a href="index.html" title="Archetype">Archetype</a></li>
+            <li><a href="../resolver/index.html" title="Artifact Resolver">Artifact Resolver</a></li>
+            <li><a href="../doxia/index.html" title="Doxia">Doxia</a></li>
+            <li><a href="../jxr/index.html" title="JXR">JXR</a></li>
+            <li><a href="../ref/current" title="Maven">Maven</a></li>
+            <li><a href="../pom/index.html" title="Parent POMs">Parent POMs</a></li>
+            <li><a href="../plugins/index.html" title="Plugins">Plugins</a></li>
+            <li><a href="../plugin-testing/index.html" title="Plugin Testing">Plugin Testing</a></li>
+            <li><a href="../plugin-tools/index.html" title="Plugin Tools">Plugin Tools</a></li>
+            <li><a href="../apache-resource-bundles/index.html" title="Resource Bundles">Resource Bundles</a></li>
+            <li><a href="../scm/index.html" title="SCM">SCM</a></li>
+            <li><a href="../shared/index.html" title="Shared Components">Shared Components</a></li>
+            <li><a href="../skins/index.html" title="Skins">Skins</a></li>
+            <li><a href="../surefire/index.html" title="Surefire">Surefire</a></li>
+            <li><a href="../wagon/index.html" title="Wagon">Wagon</a></li>
+        </ul>
+      </li>
+      <li class="dropdown">
+        <a href="#" class="dropdown-toggle" data-toggle="dropdown">ASF <b class="caret"></b></a>
+        <ul class="dropdown-menu">
+            <li><a href="https://www.apache.org/foundation/how-it-works.html" title="How Apache Works">How Apache Works</a></li>
+            <li><a href="https://www.apache.org/foundation/" title="Foundation">Foundation</a></li>
+            <li><a href="https://www.apache.org/foundation/sponsorship.html" title="Sponsoring Apache">Sponsoring Apache</a></li>
+            <li><a href="https://www.apache.org/foundation/thanks.html" title="Thanks">Thanks</a></li>
+        </ul>
+      </li>
+            </ul>
+            </div>
+        </div>
+      </div>
+    </div>
+    <div class="container-fluid">
+      <div id="banner">
+        <div class="pull-left"><a href="https://www.apache.org/" id="bannerLeft"><img src="../images/apache-maven-project.png"  alt="Maven Archetype"/></a></div>
+        <div class="pull-right"><a href="../" id="bannerRight"><img src="../images/maven-logo-black-on-white.png"  alt=""/></a></div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+      <li class=""><a href="https://www.apache.org/" class="externalLink" title="Apache">Apache</a><span class="divider">/</span></li>
+      <li class=""><a href="../index.html" title="Maven">Maven</a><span class="divider">/</span></li>
+      <li class=""><a href="../maven-archetype/index.html" title="Maven Archetype">Maven Archetype</a><span class="divider">/</span></li>
+    <li class="active ">About <a href="https://github.com/apache/maven-archetype/tree/maven-archetype-3.2.1/src/site/apt/index.apt"><img src="./images/accessories-text-editor.png" title="Edit" /></a></li>
+        <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2021-12-27</li>
+          <li id="projectVersion" class="pull-right">Version: 3.2.1</li>
+        </ul>
+      </div>
+      <div class="row-fluid">
+        <div id="leftColumn" class="span2">
+          <div class="well sidebar-nav">
+    <ul class="nav nav-list">
+      <li class="nav-header">Overview</li>
+    <li class="active"><a href="#"><span class="none"></span>Introduction</a></li>
+    <li><a href="maven-archetype-plugin/index.html" title="Maven Archetype Plugin"><span class="none"></span>Maven Archetype Plugin</a></li>
+    <li><a href="http://www.apache.org/licenses/" class="externalLink" title="License"><span class="none"></span>License</a></li>
+    <li><a href="download.html" title="Download"><span class="none"></span>Download</a></li>
+      <li class="nav-header">Modules</li>
+    <li><a href="archetype-models/index.html" title="Maven Archetype Models"><span class="none"></span>Maven Archetype Models</a></li>
+    <li><a href="archetype-common/index.html" title="Maven Archetype Common"><span class="none"></span>Maven Archetype Common</a></li>
+    <li><a href="maven-archetype-plugin/index.html" title="Maven Archetype Plugin"><span class="none"></span>Maven Archetype Plugin</a></li>
+    <li><a href="archetype-packaging/index.html" title="Maven Archetype Packaging"><span class="none"></span>Maven Archetype Packaging</a></li>
+      <li class="nav-header">Project Documentation</li>
+    <li><a href="project-info.html" title="Project Information"><span class="icon-chevron-down"></span>Project Information</a>
+    <ul class="nav nav-list">
+    <li class="active"><a href="#"><span class="none"></span>About</a></li>
+    <li><a href="summary.html" title="Summary"><span class="none"></span>Summary</a></li>
+    <li><a href="dependency-info.html" title="Dependency Information"><span class="none"></span>Dependency Information</a></li>
+    <li><a href="modules.html" title="Project Modules"><span class="none"></span>Project Modules</a></li>
+    <li><a href="team.html" title="Team"><span class="none"></span>Team</a></li>
+    <li><a href="scm.html" title="Source Code Management"><span class="none"></span>Source Code Management</a></li>
+    <li><a href="issue-management.html" title="Issue Management"><span class="none"></span>Issue Management</a></li>
+    <li><a href="mailing-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a></li>
+    <li><a href="dependency-management.html" title="Dependency Management"><span class="none"></span>Dependency Management</a></li>
+    <li><a href="dependency-convergence.html" title="Dependency Convergence"><span class="none"></span>Dependency Convergence</a></li>
+    <li><a href="ci-management.html" title="CI Management"><span class="none"></span>CI Management</a></li>
+    <li><a href="plugin-management.html" title="Plugin Management"><span class="none"></span>Plugin Management</a></li>
+    <li><a href="plugins.html" title="Plugins"><span class="none"></span>Plugins</a></li>
+    <li><a href="distribution-management.html" title="Distribution Management"><span class="none"></span>Distribution Management</a></li>
+    </ul>
+</li>
+    <li><a href="project-reports.html" title="Project Reports"><span class="icon-chevron-right"></span>Project Reports</a></li>
+      <li class="nav-header">Maven Projects</li>
+    <li class="active"><a href="#"><span class="none"></span>Archetype</a></li>
+    <li><a href="../resolver/index.html" title="Artifact Resolver"><span class="none"></span>Artifact Resolver</a></li>
+    <li><a href="../doxia/index.html" title="Doxia"><span class="none"></span>Doxia</a></li>
+    <li><a href="../jxr/index.html" title="JXR"><span class="none"></span>JXR</a></li>
+    <li><a href="../ref/current" title="Maven"><span class="none"></span>Maven</a></li>
+    <li><a href="../pom/index.html" title="Parent POMs"><span class="none"></span>Parent POMs</a></li>
+    <li><a href="../plugins/index.html" title="Plugins"><span class="none"></span>Plugins</a></li>
+    <li><a href="../plugin-testing/index.html" title="Plugin Testing"><span class="none"></span>Plugin Testing</a></li>
+    <li><a href="../plugin-tools/index.html" title="Plugin Tools"><span class="none"></span>Plugin Tools</a></li>
+    <li><a href="../apache-resource-bundles/index.html" title="Resource Bundles"><span class="none"></span>Resource Bundles</a></li>
+    <li><a href="../scm/index.html" title="SCM"><span class="none"></span>SCM</a></li>
+    <li><a href="../shared/index.html" title="Shared Components"><span class="none"></span>Shared Components</a></li>
+    <li><a href="../skins/index.html" title="Skins"><span class="none"></span>Skins</a></li>
+    <li><a href="../surefire/index.html" title="Surefire"><span class="none"></span>Surefire</a></li>
+    <li><a href="../wagon/index.html" title="Wagon"><span class="none"></span>Wagon</a></li>
+      <li class="nav-header">ASF</li>
+    <li><a href="https://www.apache.org/foundation/how-it-works.html" class="externalLink" title="How Apache Works"><span class="none"></span>How Apache Works</a></li>
+    <li><a href="https://www.apache.org/foundation/" class="externalLink" title="Foundation"><span class="none"></span>Foundation</a></li>
+    <li><a href="https://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsoring Apache"><span class="none"></span>Sponsoring Apache</a></li>
+    <li><a href="https://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"><span class="none"></span>Thanks</a></li>
+</ul>
+<form id="search-form" action="https://www.google.com/search" method="get" >
+  <input value="https://maven.apache.org/archetype" name="sitesearch" type="hidden"/>
+  <input class="search-query" name="q" id="query" type="text" />
+</form>
+<script type="text/javascript">asyncJs( 'https://cse.google.com/brand?form=search-form' )</script>
+          <hr />
+          <div id="poweredBy">
+            <div class="clear"></div>
+            <div class="clear"></div>
+    <div id="twitter">
+    <a href="https://twitter.com/ASFMavenProject" class="twitter-follow-button" data-show-count="false" data-align="left" data-size="medium" data-show-screen-name="true" data-lang="en">Follow ASFMavenProject</a>
+    <script type="text/javascript">!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
+    </div>
+            <div class="clear"></div>
+            <div class="clear"></div>
+<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
+            </div>
+          </div>
+        </div>
+        <div id="bodyColumn"  class="span10" >
+<div class="section">
+<h2><a name="Maven_Archetype"></a>Maven Archetype</h2>
+<div class="section">
+<h3><a name="What_is_Archetype.3F"></a>What is Archetype?</h3>
+<p>In short, Archetype is a Maven project templating toolkit. An archetype is defined as <i>an original pattern or model from which all other things of the same kind are made</i>. The names fits as we are trying to provide a system that provides a consistent means of generating Maven projects. Archetype will help authors create Maven project templates for users, and provides users with the means to generate parameterized versions of those project templates.</p>
+<p>Using archetypes provides a great way to enable developers quickly in a way consistent with best practices employed by your project or organization. Within the Maven project we use archetypes to try and get our users up and running as quickly as possible by providing a sample project that demonstrates many of the features of Maven while introducing new users to the best practices employed by Maven. In a matter of seconds a new user can have a working Maven project to use as a jumping  [...]
+<p>You may want to standardize J2EE development within your organization so you may want to provide archetypes for EJBs, or WARs, or for your web services. Once these archetypes are created and deployed in your organization's repository they are available for use by all developers within your organization.</p></div>
+<div class="section">
+<h3><a name="Using_an_Archetype"></a>Using an Archetype</h3>
+<p>To create a new project based on an Archetype, you need to call <tt>mvn archetype:generate</tt> goal, like the following:</p>
+<div class="source"><pre class="prettyprint linenums">mvn archetype:generate</pre></div>
+<p>Please refer to <a class="externalLink" href="http://maven.apache.org/plugins/maven-archetype-plugin/usage.html">Archetype Plugin Page</a> for more details.</p></div>
+<div class="section">
+<h3><a name="Content"></a>Content</h3>
+<p>Maven Archetype is composed of several modules:</p>
+<table border="1" class="table table-striped">
+<tr class="a">
+<th align="left">Module</th>
+<th align="left">Description</th></tr>
+<tr class="b">
+<td align="left"><b><a href="./maven-archetype-plugin/">maven-archetype-plugin</a></b></td>
+<td align="left">Archetype Plugin to use archetypes with Maven,</td></tr>
+<tr class="a">
+<td align="left"><a href="./archetype-packaging/">archetype-packaging</a></td>
+<td align="left">Archetype lifecycle and packaging definition,</td></tr>
+<tr class="b">
+<td align="left"><a href="./archetype-models/">archetype-models</a></td>
+<td align="left">Descriptors classes and reference documentation,</td></tr>
+<tr class="a">
+<td align="left"><a href="./archetype-common/">archetype-common</a></td>
+<td align="left">Core classes,</td></tr>
+<tr class="b">
+<td align="left"><a href="./archetype-testing/">archetype-testing</a></td>
+<td align="left">Components used internally to test Maven Archetype,</td></tr></table>
+<p>Some archetypes are also provided by Maven: see <a href="/archetypes/">Maven Archetype Bundles</a>.</p></div></div>
+        </div>
+      </div>
+    </div>
+    <hr/>
+    <footer>
+      <div class="container-fluid">
+        <div class="row-fluid">
+            <p>Copyright &copy;2007&#x2013;2021
+<a href="https://www.apache.org/">The Apache Software Foundation</a>.
+All rights reserved.</p>
+        </div>
+      </div>
+    </footer>
+  </body>
+</html>
\ No newline at end of file
diff --git a/src/test/resources/org/apache/maven/dist/tools/site/stylus-right.html b/src/test/resources/org/apache/maven/dist/tools/site/stylus-right.html
new file mode 100644
index 0000000..6964d61
--- /dev/null
+++ b/src/test/resources/org/apache/maven/dist/tools/site/stylus-right.html
@@ -0,0 +1,234 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--
+ | Generated by Apache Maven Doxia at 2015-02-23
+ | Rendered using Apache Maven Stylus Skin 1.5
+-->
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <title>Apache Maven Stage Plugin &#x2013; Introduction</title>
+    <style type="text/css" media="all">
+      @import url("./css/maven-base.css");
+      @import url("./css/maven-theme.css");
+      @import url("./css/site.css");
+    </style>
+    <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
+        <meta name="author" content="Dennis Lundberg" />
+        <meta name="Date-Creation-yyyymmdd" content="20130722" />
+    <meta name="Date-Revision-yyyymmdd" content="20150223" />
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+                                                    
+<script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
+                                                        
+<script type="text/javascript">_uacct = "UA-140879-1";
+        urchinTracker();</script>
+                              </head>
+  <body class="composite">
+    <div id="banner">
+                                      <a href="../../" id="bannerLeft">
+                                                <img src="../../images/apache-maven-project-2.png" alt="" />
+                </a>
+                        <span id="bannerRight">
+                                                <img src="../../images/maven-logo-2.gif" alt="" />
+                </span>
+            <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="breadcrumbs">
+            
+                                   <div class="xleft">
+                          <a href="http://www.apache.org/" class="externalLink">Apache</a>
+        &gt;
+                  <a href="../../index.html">Maven</a>
+        &gt;
+                  <a href="../index.html">Plugins</a>
+        &gt;
+                      <a href="./">Apache Maven Stage Plugin</a>
+        &gt;
+        Introduction
+        </div>
+            <div class="xright">        
+                                    Last Published: 2015-02-23
+              &nbsp;| Version: 1.0
+            </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+    <div id="leftColumn">
+      <div id="navcolumn">
+             
+                                                   <h5>Overview</h5>
+                  <ul>
+                  <li class="none">
+            <strong>Introduction</strong>
+          </li>
+                  <li class="none">
+                  <a href="plugin-info.html">Goals</a>
+            </li>
+                  <li class="none">
+                  <a href="usage.html">Usage</a>
+            </li>
+                  <li class="none">
+                  <a href="faq.html">FAQ</a>
+            </li>
+                  <li class="none">
+                  <a href="http://www.apache.org/licenses/" class="externalLink">License</a>
+            </li>
+                  <li class="none">
+                  <a href="download.html">Download</a>
+            </li>
+          </ul>
+                       <h5>Project Documentation</h5>
+                  <ul>
+                                                                                                                                                                                                                                                                                                      <li class="expanded">
+                  <a href="project-info.html">Project Information</a>
+                    <ul>
+                      <li class="none">
+            <strong>About</strong>
+          </li>
+                      <li class="none">
+                  <a href="project-summary.html">Project Summary</a>
+            </li>
+                      <li class="none">
+                  <a href="dependency-info.html">Dependency Information</a>
+            </li>
+                      <li class="none">
+                  <a href="team-list.html">Project Team</a>
+            </li>
+                      <li class="none">
+                  <a href="source-repository.html">Source Repository</a>
+            </li>
+                      <li class="none">
+                  <a href="issue-tracking.html">Issue Tracking</a>
+            </li>
+                      <li class="none">
+                  <a href="mail-lists.html">Mailing Lists</a>
+            </li>
+                      <li class="none">
+                  <a href="dependency-management.html">Dependency Management</a>
+            </li>
+                      <li class="none">
+                  <a href="dependencies.html">Dependencies</a>
+            </li>
+                      <li class="none">
+                  <a href="integration.html">Continuous Integration</a>
+            </li>
+                      <li class="none">
+                  <a href="plugin-management.html">Plugin Management</a>
+            </li>
+                      <li class="none">
+                  <a href="plugins.html">Project Plugins</a>
+            </li>
+                      <li class="none">
+                  <a href="distribution-management.html">Distribution Management</a>
+            </li>
+              </ul>
+        </li>
+                                                                                                                                                                                                                                      <li class="collapsed">
+                  <a href="project-reports.html">Project Reports</a>
+                  </li>
+          </ul>
+                       <h5>Maven Projects</h5>
+                  <ul>
+                  <li class="none">
+                  <a href="../../ant-tasks/index.html">Ant Tasks</a>
+            </li>
+                  <li class="none">
+                  <a href="../../archetype/index.html">Archetype</a>
+            </li>
+                  <li class="none">
+                  <a href="../../doxia/index.html">Doxia</a>
+            </li>
+                  <li class="none">
+                  <a href="../../jxr/index.html">JXR</a>
+            </li>
+                  <li class="none">
+                  <a href="../../ref/current">Maven</a>
+            </li>
+                  <li class="none">
+                  <a href="../../pom/index.html">Parent POMs</a>
+            </li>
+                  <li class="none">
+                  <a href="../index.html">Plugins</a>
+            </li>
+                  <li class="none">
+                  <a href="../../plugin-testing/index.html">Plugin Testing</a>
+            </li>
+                  <li class="none">
+                  <a href="../../plugin-tools/index.html">Plugin Tools</a>
+            </li>
+                  <li class="none">
+                  <a href="../../apache-resource-bundles/index.html">Resource Bundles</a>
+            </li>
+                  <li class="none">
+                  <a href="../../scm/index.html">SCM</a>
+            </li>
+                  <li class="none">
+                  <a href="../../shared/index.html">Shared Components</a>
+            </li>
+                  <li class="none">
+                  <a href="../../skins/index.html">Skins</a>
+            </li>
+                  <li class="none">
+                  <a href="../../surefire/index.html">Surefire</a>
+            </li>
+                  <li class="none">
+                  <a href="../../wagon/index.html">Wagon</a>
+            </li>
+          </ul>
+                       <h5>ASF</h5>
+                  <ul>
+                  <li class="none">
+                  <a href="http://www.apache.org/foundation/how-it-works.html" class="externalLink">How Apache Works</a>
+            </li>
+                  <li class="none">
+                  <a href="http://www.apache.org/foundation/" class="externalLink">Foundation</a>
+            </li>
+                  <li class="none">
+                  <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink">Sponsoring Apache</a>
+            </li>
+                  <li class="none">
+                  <a href="http://www.apache.org/foundation/thanks.html" class="externalLink">Thanks</a>
+            </li>
+          </ul>
+                                 <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+          <img alt="Built by Maven" src="./images/logos/maven-feather.png"/>
+        </a>
+                       
+                               </div>
+    </div>
+    <div id="bodyColumn">
+      <div id="contentBox">
+        <!-- Licensed to the Apache Software Foundation (ASF) under one --><!-- or more contributor license agreements.  See the NOTICE file --><!-- distributed with this work for additional information --><!-- regarding copyright ownership.  The ASF licenses this file --><!-- to you under the Apache License, Version 2.0 (the --><!-- "License"); you may not use this file except in compliance --><!-- with the License.  You may obtain a copy of the License at --><!--  --><!-- http://www.ap [...]
+<h2><a name="Apache_Maven_Stage_Plugin"></a>Apache Maven Stage Plugin</h2>
+<p>The Maven Stage Plugin copies artifacts from one repository to another. Its main use is for copying artifacts from a staging repository to the real repository.</p>
+<div class="section">
+<h3><a name="Goals_Overview"></a>Goals Overview</h3>
+<p>The Stage Plugin has one goal:</p>
+<ul>
+<li><a href="./copy-mojo.html">stage:copy</a> Copies artifacts from one repository to another repository.</li></ul></div>
+<div class="section">
+<h3><a name="Usage"></a>Usage</h3>
+<p>General instructions on how to use the Stage Plugin can be found on the <a href="./usage.html">usage page</a>. Last but not least, users occasionally contribute additional examples, tips or errata to the <a class="externalLink" href="http://docs.codehaus.org/display/MAVENUSER/Stage+Plugin">plugin's wiki page</a>.</p>
+<p>In case you still have questions regarding the plugin's usage, please have a look at the <a href="./faq.html">FAQ</a> and feel free to contact the <a href="./mail-lists.html">user mailing list</a>. The posts to the mailing list are archived and could already contain the answer to your question as part of an older thread. Hence, it is also worth browsing/searching the <a href="./mail-lists.html">mail archive</a>.</p>
+<p>If you feel like the plugin is missing a feature or has a defect, you can fill a feature request or bug report in our <a href="./issue-tracking.html">issue tracker</a>. When creating a new issue, please provide a comprehensive description of your concern. Especially for fixing bugs it is crucial that the developers can reproduce your problem. For this reason, entire debug logs, POMs or most preferably little demo projects attached to the issue are very much appreciated. Of course, pat [...]
+      </div>
+    </div>
+    <div class="clear">
+      <hr/>
+    </div>
+    <div id="footer">
+      <div class="xright">
+        &#169;            2002-2015
+              The Apache Software Foundation
+            
+                          - <a href="http://maven.apache.org/privacy-policy.html">Privacy Policy</a>.
+        Apache Maven, Maven, Apache, the Apache feather logo, and the Apache Maven project logos are trademarks of The Apache Software Foundation.
+      </div>
+      <div class="clear">
+        <hr/>
+      </div>
+    </div>
+  </body>
+</html>
\ No newline at end of file

[maven-dist-tool] 01/04: scope = provided for artifacts provided by Maven core

Posted by hb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dist-tool.git

commit 62afd0b5a2fecad9fec7433e0c3940d1ca9c6628
Author: Hervé Boutemy <hb...@apache.org>
AuthorDate: Sun Jan 2 19:31:43 2022 +0100

    scope = provided for artifacts provided by Maven core
---
 .gitignore | 1 +
 pom.xml    | 5 +++++
 2 files changed, 6 insertions(+)

diff --git a/.gitignore b/.gitignore
index 19e9e0b..62c7b3f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@ build
 .surefire-*
 .DS_Store
 *.versionsBackup
+/.factorypath
diff --git a/pom.xml b/pom.xml
index c5cc6da..eb71f91 100644
--- a/pom.xml
+++ b/pom.xml
@@ -62,6 +62,7 @@
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-plugin-api</artifactId>
       <version>${mvnversion}</version>
+      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.maven.plugin-tools</groupId>
@@ -77,16 +78,19 @@
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-core</artifactId>
       <version>${mvnversion}</version>
+      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-compat</artifactId>
       <version>${mvnversion}</version>
+      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-repository-metadata</artifactId>
       <version>${mvnversion}</version>
+      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.maven.reporting</groupId>
@@ -112,6 +116,7 @@
       <groupId>org.apache.maven</groupId>
       <artifactId>maven-aether-provider</artifactId>
       <version>${mvnversion}</version>
+      <scope>provided</scope>
     </dependency>
     <!-- https://mvnrepository.com/artifact/org.kohsuke/github-api -->
     <dependency>