You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2021/06/04 08:36:00 UTC
[maven-pdf-plugin] 01/01: [MPDF-95] Require Maven 3.1.1
This is an automated email from the ASF dual-hosted git repository.
slachiewicz pushed a commit to branch MPDF-95
in repository https://gitbox.apache.org/repos/asf/maven-pdf-plugin.git
commit 6e78dfea84d9fcbca7047270630c797307695a04
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Fri Jun 4 10:25:24 2021 +0200
[MPDF-95] Require Maven 3.1.1
---
pom.xml | 27 +++-----
.../plugins/pdf/DocumentDescriptorReader.java | 6 +-
.../java/org/apache/maven/plugins/pdf/PdfMojo.java | 73 +---------------------
.../plugins/pdf/DocumentDescriptorReaderTest.java | 4 +-
.../plugins/pdf/stubs/DefaultMavenProjectStub.java | 10 ++-
.../pdf/stubs/FilteringMavenProjectStub.java | 12 ++--
.../plugins/pdf/stubs/ITextMavenProjectStub.java | 9 ++-
7 files changed, 28 insertions(+), 113 deletions(-)
diff --git a/pom.xml b/pom.xml
index 92f68b6..237cc89 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@ under the License.
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugins</artifactId>
<version>34</version>
- <relativePath>../../pom/maven/maven-plugins/pom.xml</relativePath>
+ <relativePath/>
</parent>
<artifactId>maven-pdf-plugin</artifactId>
@@ -90,8 +90,8 @@ under the License.
<properties>
<doxiaVersion>1.9</doxiaVersion>
- <doxiaSitetoolsVersion>1.8.1</doxiaSitetoolsVersion>
- <mavenVersion>2.2.1</mavenVersion>
+ <doxiaSitetoolsVersion>1.9.1</doxiaSitetoolsVersion>
+ <mavenVersion>3.1.1</mavenVersion>
<javaVersion>7</javaVersion>
<project.build.outputTimestamp>2020-04-07T21:04:00Z</project.build.outputTimestamp>
</properties>
@@ -115,19 +115,20 @@ under the License.
<dependency>
<groupId>org.apache.maven.reporting</groupId>
<artifactId>maven-reporting-exec</artifactId>
- <version>1.4</version>
+ <version>1.5.1</version>
</dependency>
<!-- Maven -->
<dependency>
<groupId>org.apache.maven</groupId>
- <artifactId>maven-project</artifactId>
+ <artifactId>maven-core</artifactId>
<version>${mavenVersion}</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
- <artifactId>maven-core</artifactId>
+ <artifactId>maven-compat</artifactId>
<version>${mavenVersion}</version>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
@@ -140,11 +141,6 @@ under the License.
<version>${mavenVersion}</version>
</dependency>
<dependency>
- <groupId>org.apache.maven</groupId>
- <artifactId>maven-artifact-manager</artifactId>
- <version>${mavenVersion}</version>
- </dependency>
- <dependency>
<groupId>org.apache.maven.plugin-tools</groupId>
<artifactId>maven-plugin-annotations</artifactId>
<scope>provided</scope>
@@ -152,7 +148,7 @@ under the License.
<dependency>
<groupId>org.apache.maven.reporting</groupId>
<artifactId>maven-reporting-impl</artifactId>
- <version>2.3</version>
+ <version>3.0.0</version>
</dependency>
<!-- Doxia -->
@@ -271,14 +267,9 @@ under the License.
<dependency>
<groupId>org.apache.maven.plugin-testing</groupId>
<artifactId>maven-plugin-testing-harness</artifactId>
- <version>1.3</version>
+ <version>3.1.0</version>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-container-default</artifactId>
- <version>1.0-alpha-9-stable-1</version>
- </dependency>
</dependencies>
<build>
diff --git a/src/main/java/org/apache/maven/plugins/pdf/DocumentDescriptorReader.java b/src/main/java/org/apache/maven/plugins/pdf/DocumentDescriptorReader.java
index 7b72355..c893606 100644
--- a/src/main/java/org/apache/maven/plugins/pdf/DocumentDescriptorReader.java
+++ b/src/main/java/org/apache/maven/plugins/pdf/DocumentDescriptorReader.java
@@ -138,7 +138,7 @@ public class DocumentDescriptorReader
}
catch ( Exception e )
{
- addFeedback( "Failed to extract \'" + expression + "\' from: " + project, e );
+ addFeedback( "Failed to extract '" + expression + "' from: " + project, e );
}
return null;
@@ -164,9 +164,7 @@ public class DocumentDescriptorReader
}
catch ( InterpolationException e )
{
- final IOException io = new IOException( "Error interpolating document descriptor" );
- io.initCause( e );
- throw io;
+ throw new IOException( "Error interpolating document descriptor", e );
}
}
}
diff --git a/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java b/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java
index 142c777..f993526 100644
--- a/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java
+++ b/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java
@@ -21,7 +21,6 @@ package org.apache.maven.plugins.pdf;
import java.io.File;
import java.io.IOException;
-import java.io.InputStream;
import java.io.Reader;
import java.io.StringReader;
import java.io.StringWriter;
@@ -31,15 +30,10 @@ import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
-import java.util.Properties;
import org.apache.commons.io.input.XmlStreamReader;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.versioning.ArtifactVersion;
-import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
-import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
-import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.doxia.Doxia;
import org.apache.maven.doxia.docrenderer.AbstractDocumentRenderer;
import org.apache.maven.doxia.docrenderer.DocumentRenderer;
@@ -71,13 +65,11 @@ import org.apache.maven.model.ReportPlugin;
import org.apache.maven.model.Reporting;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.MojoFailureException;
-import org.apache.maven.plugin.PluginManager;
import org.apache.maven.plugins.annotations.Component;
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
import org.apache.maven.plugins.annotations.ResolutionScope;
import org.apache.maven.project.MavenProject;
-import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.reporting.AbstractMavenReportRenderer;
import org.apache.maven.reporting.MavenReport;
import org.apache.maven.reporting.MavenReportException;
@@ -157,14 +149,6 @@ public class PdfMojo
private SiteTool siteTool;
/**
- * The Plugin manager instance used to resolve Plugin descriptors.
- *
- * @since 1.1
- */
- @Component( role = PluginManager.class )
- private PluginManager pluginManager;
-
- /**
* Doxia.
*
* @since 1.1
@@ -172,14 +156,6 @@ public class PdfMojo
@Component
private Doxia doxia;
- /**
- * Project builder.
- *
- * @since 1.1
- */
- @Component
- private MavenProjectBuilder mavenProjectBuilder;
-
// ----------------------------------------------------------------------
// Mojo Parameters
// ----------------------------------------------------------------------
@@ -1376,11 +1352,6 @@ public class PdfMojo
protected List<MavenReportExecution> getReports()
throws MojoExecutionException
{
- if ( !isMaven3OrMore() )
- {
- getLog().error( "Report generation is not supported with Maven <= 2.x" );
- }
-
MavenReportExecutorRequest mavenReportExecutorRequest = new MavenReportExecutorRequest();
mavenReportExecutorRequest.setLocalRepository( localRepository );
mavenReportExecutorRequest.setMavenSession( session );
@@ -1428,52 +1399,10 @@ public class PdfMojo
mpir.setArtifactId( "maven-project-info-reports-plugin" );
reportingPlugins.add( mpir );
}
- return reportingPlugins.toArray( new ReportPlugin[reportingPlugins.size()] );
+ return reportingPlugins.toArray( new ReportPlugin[0] );
}
/**
- * Check the current Maven version to see if it's Maven 3.0 or newer.
- */
- protected static boolean isMaven3OrMore()
- {
- try
- {
- ArtifactVersion mavenVersion = new DefaultArtifactVersion( getMavenVersion() );
- return VersionRange.createFromVersionSpec( "[3.0,)" ).containsVersion( mavenVersion );
- }
- catch ( InvalidVersionSpecificationException e )
- {
- return false;
- }
-// return new ComparableVersion( getMavenVersion() ).compareTo( new ComparableVersion( "3.0" ) ) >= 0;
- }
-
- protected static String getMavenVersion()
- {
- // This relies on the fact that MavenProject is the in core classloader
- // and that the core classloader is for the maven-core artifact
- // and that should have a pom.properties file
- // if this ever changes, we will have to revisit this code.
- final Properties properties = new Properties();
-
- try ( InputStream in = MavenProject.class.getClassLoader().getResourceAsStream(
- "META-INF/maven/org.apache.maven/maven-core/pom.properties" ) )
- {
- properties.load( in );
- }
- catch ( IOException ioe )
- {
- return "";
- }
-
- return properties.getProperty( "version" ).trim();
- }
-
- // ----------------------------------------------------------------------
- // static methods
- // ----------------------------------------------------------------------
-
- /**
* Write the given content to the given file.
* <br/>
* <b>Note</b>: try also to fix the content due to some issues in
diff --git a/src/test/java/org/apache/maven/plugins/pdf/DocumentDescriptorReaderTest.java b/src/test/java/org/apache/maven/plugins/pdf/DocumentDescriptorReaderTest.java
index d402633..ab07d3f 100644
--- a/src/test/java/org/apache/maven/plugins/pdf/DocumentDescriptorReaderTest.java
+++ b/src/test/java/org/apache/maven/plugins/pdf/DocumentDescriptorReaderTest.java
@@ -65,8 +65,8 @@ public class DocumentDescriptorReaderTest
assertEquals( "Table of Contents", model.getToc().getName() );
assertEquals( 5, model.getToc().getItems().size() );
assertNotNull( model.getMeta() );
- assertTrue( model.getMeta().getTitle().indexOf(
- "User guide in en of Test filtering version 1.0-SNAPSHOT" ) == 0 );
+ assertEquals( 0, model.getMeta().getTitle().indexOf(
+ "User guide in en of Test filtering version 1.0-SNAPSHOT" ) );
assertEquals( "vsiveton@apache.org ltheussl@apache.org", model.getMeta().getAuthor() );
}
diff --git a/src/test/java/org/apache/maven/plugins/pdf/stubs/DefaultMavenProjectStub.java b/src/test/java/org/apache/maven/plugins/pdf/stubs/DefaultMavenProjectStub.java
index 240dfb3..1975fb9 100644
--- a/src/test/java/org/apache/maven/plugins/pdf/stubs/DefaultMavenProjectStub.java
+++ b/src/test/java/org/apache/maven/plugins/pdf/stubs/DefaultMavenProjectStub.java
@@ -25,12 +25,11 @@ import java.util.Collections;
import java.util.List;
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.DefaultArtifactRepository;
+import org.apache.maven.artifact.repository.MavenArtifactRepository;
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
import org.apache.maven.model.Model;
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
-import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.ReaderFactory;
/**
@@ -67,11 +66,10 @@ public class DefaultMavenProjectStub
}
/** {@inheritDoc} */
- public List getRemoteArtifactRepositories()
+ public List<ArtifactRepository> getRemoteArtifactRepositories()
{
- ArtifactRepository repository =
- new DefaultArtifactRepository( "central", "http://repo1.maven.org/maven2",
- new DefaultRepositoryLayout() );
+ ArtifactRepository repository = new MavenArtifactRepository( "central", "https://repo.maven.apache.org/maven2",
+ new DefaultRepositoryLayout(), null, null );
return Collections.singletonList( repository );
}
diff --git a/src/test/java/org/apache/maven/plugins/pdf/stubs/FilteringMavenProjectStub.java b/src/test/java/org/apache/maven/plugins/pdf/stubs/FilteringMavenProjectStub.java
index 93a587f..27467b5 100644
--- a/src/test/java/org/apache/maven/plugins/pdf/stubs/FilteringMavenProjectStub.java
+++ b/src/test/java/org/apache/maven/plugins/pdf/stubs/FilteringMavenProjectStub.java
@@ -26,12 +26,12 @@ import java.util.List;
import java.util.Properties;
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.DefaultArtifactRepository;
+import org.apache.maven.artifact.repository.MavenArtifactRepository;
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
+import org.apache.maven.model.Developer;
import org.apache.maven.model.Model;
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
-import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.ReaderFactory;
/**
@@ -73,7 +73,7 @@ public class FilteringMavenProjectStub
}
/** {@inheritDoc} */
- public List getDevelopers()
+ public List<Developer> getDevelopers()
{
return getModel().getDevelopers();
}
@@ -85,11 +85,11 @@ public class FilteringMavenProjectStub
}
/** {@inheritDoc} */
- public List getRemoteArtifactRepositories()
+ public List<ArtifactRepository> getRemoteArtifactRepositories()
{
ArtifactRepository repository =
- new DefaultArtifactRepository( "central", "http://repo1.maven.org/maven2",
- new DefaultRepositoryLayout() );
+ new MavenArtifactRepository( "central", "https://repo.maven.apache.org/maven2",
+ new DefaultRepositoryLayout(), null,null );
return Collections.singletonList( repository );
}
diff --git a/src/test/java/org/apache/maven/plugins/pdf/stubs/ITextMavenProjectStub.java b/src/test/java/org/apache/maven/plugins/pdf/stubs/ITextMavenProjectStub.java
index 0b2e5bf..c55df9b 100644
--- a/src/test/java/org/apache/maven/plugins/pdf/stubs/ITextMavenProjectStub.java
+++ b/src/test/java/org/apache/maven/plugins/pdf/stubs/ITextMavenProjectStub.java
@@ -25,12 +25,11 @@ import java.util.Collections;
import java.util.List;
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.DefaultArtifactRepository;
+import org.apache.maven.artifact.repository.MavenArtifactRepository;
import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
import org.apache.maven.model.Model;
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
-import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.ReaderFactory;
/**
@@ -61,11 +60,11 @@ public class ITextMavenProjectStub
}
/** {@inheritDoc} */
- public List getRemoteArtifactRepositories()
+ public List<ArtifactRepository> getRemoteArtifactRepositories()
{
ArtifactRepository repository =
- new DefaultArtifactRepository( "central", "http://repo1.maven.org/maven2",
- new DefaultRepositoryLayout() );
+ new MavenArtifactRepository( "central", "https://repo.maven.apache.org/maven2",
+ new DefaultRepositoryLayout(), null, null );
return Collections.singletonList( repository );
}