This is an automated email from the ASF dual-hosted git repository. hboutemy pushed a commit to branch java-version in repository https://gitbox.apache.org/repos/asf/maven-project-info-reports-plugin.git
commit 1a69703593d6d3631e69d120607c1d1c23fd12f7 Author: Hervé Boutemy <[email protected]> AuthorDate: Sun May 24 16:22:16 2026 +0200 use maven-archiver for Java Version --- pom.xml | 5 +++ src/it/java-version/verify.groovy | 2 +- .../projectinfo/AbstractProjectInfoReport.java | 46 ---------------------- .../maven/report/projectinfo/SummaryReport.java | 29 +++++--------- 4 files changed, 15 insertions(+), 67 deletions(-) diff --git a/pom.xml b/pom.xml index 2dadadd..3b101fd 100644 --- a/pom.xml +++ b/pom.xml @@ -141,6 +141,11 @@ under the License. <artifactId>maven-shared-jar</artifactId> <version>3.2.0</version> </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-archiver</artifactId> + <version>3.6.6</version> + </dependency> <!-- Maven --> <dependency> diff --git a/src/it/java-version/verify.groovy b/src/it/java-version/verify.groovy index 1f9ef0c..d50c5ed 100644 --- a/src/it/java-version/verify.groovy +++ b/src/it/java-version/verify.groovy @@ -17,7 +17,7 @@ * under the License. */ -assert new File( basedir, 'plugin/target/reports/summary.html' ).text.contains( '<td>1.5</td>' ) +assert new File( basedir, 'plugin/target/reports/summary.html' ).text.contains( '<td>5</td>' ) assert new File( basedir, 'pluginManagement/target/reports/summary.html' ).text.contains( '<td>1.4</td>' ) assert new File( basedir, 'property/target/reports/summary.html' ).text.contains( '<td>1.3</td>' ) diff --git a/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java b/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java index 8de0af0..c3d8aac 100644 --- a/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java +++ b/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java @@ -34,7 +34,6 @@ import java.util.ResourceBundle; import org.apache.maven.artifact.repository.ArtifactRepository; import org.apache.maven.execution.MavenSession; -import org.apache.maven.model.Plugin; import org.apache.maven.plugin.MojoExecution; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; @@ -49,8 +48,6 @@ import org.codehaus.plexus.interpolation.InterpolationException; import org.codehaus.plexus.interpolation.PrefixedObjectValueSource; import org.codehaus.plexus.interpolation.PropertiesBasedValueSource; import org.codehaus.plexus.interpolation.RegexBasedInterpolator; -import org.codehaus.plexus.util.StringUtils; -import org.codehaus.plexus.util.xml.Xpp3Dom; /** * Base class with the things that should be in AbstractMavenReport anyway. @@ -191,49 +188,6 @@ public abstract class AbstractProjectInfoReport extends AbstractMavenReport { return mojoExecution; } - /** - * @param pluginId The id of the plugin - * @return The information about the plugin - */ - protected Plugin getPlugin(String pluginId) { - if ((getProject().getBuild() == null) || (getProject().getBuild().getPluginsAsMap() == null)) { - return null; - } - - Plugin plugin = getProject().getBuild().getPluginsAsMap().get(pluginId); - - if ((plugin == null) - && (getProject().getBuild().getPluginManagement() != null) - && (getProject().getBuild().getPluginManagement().getPluginsAsMap() != null)) { - plugin = getProject() - .getBuild() - .getPluginManagement() - .getPluginsAsMap() - .get(pluginId); - } - - return plugin; - } - - /** - * @param pluginId the pluginId - * @param param the child which should be checked - * @return the value of the dom tree - */ - protected String getPluginParameter(String pluginId, String param) { - Plugin plugin = getPlugin(pluginId); - if (plugin != null) { - Xpp3Dom xpp3Dom = (Xpp3Dom) plugin.getConfiguration(); - if (xpp3Dom != null - && xpp3Dom.getChild(param) != null - && StringUtils.isNotEmpty(xpp3Dom.getChild(param).getValue())) { - return xpp3Dom.getChild(param).getValue(); - } - } - - return null; - } - /** * @param locale The locale * @param key The key to search for diff --git a/src/main/java/org/apache/maven/report/projectinfo/SummaryReport.java b/src/main/java/org/apache/maven/report/projectinfo/SummaryReport.java index 326cba3..78bf76b 100644 --- a/src/main/java/org/apache/maven/report/projectinfo/SummaryReport.java +++ b/src/main/java/org/apache/maven/report/projectinfo/SummaryReport.java @@ -24,9 +24,11 @@ import java.io.File; import java.io.IOException; import java.util.Locale; +import org.apache.maven.archiver.BuildHelper; import org.apache.maven.doxia.sink.Sink; import org.apache.maven.model.DistributionManagement; import org.apache.maven.model.Organization; +import org.apache.maven.model.Plugin; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.project.MavenProject; import org.apache.maven.project.ProjectBuilder; @@ -143,29 +145,16 @@ public class SummaryReport extends AbstractProjectInfoReport { } private String getMinimumJavaVersion() { + final Plugin compilerPlugin = BuildHelper.getCompilerPlugin(project); - final String pluginId = "org.apache.maven.plugins:maven-compiler-plugin"; - String releaseConfigured = getPluginParameter(pluginId, "release"); - String sourceConfigured = getPluginParameter(pluginId, "source"); - String targetConfigured = getPluginParameter(pluginId, "target"); - - String releaseProperty = project.getProperties().getProperty("maven.compiler.release"); - - String forkFlag = getPluginParameter(pluginId, "fork"); + String forkFlag = BuildHelper.getPluginParameter(project, compilerPlugin, "fork", "maven.compiler.fork"); if ("true".equalsIgnoreCase(forkFlag)) { - return getPluginParameter(pluginId, "compilerVersion"); - } else if (releaseConfigured != null) { - return releaseConfigured; - } else if (targetConfigured != null) { - return targetConfigured; - } else if (sourceConfigured != null) { - return sourceConfigured; - } else if (releaseProperty != null) { - return releaseProperty; - } else { - // ${maven.compiler.target} default value - return project.getProperties().getProperty("maven.compiler.target"); + // now deprecated + // https://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html#compilerVersion + return BuildHelper.getPluginParameter( + project, compilerPlugin, "compilerVersion", "maven.compiler.compilerVersion"); } + return BuildHelper.discoverJavaRelease(project); } private void tableRowWithLink(String[] content) {
