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 2014/05/30 00:26:40 UTC
svn commit: r1598434 -
/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java
Author: hboutemy
Date: Thu May 29 22:26:39 2014
New Revision: 1598434
URL: http://svn.apache.org/r1598434
Log:
filter out reports with canGenerate() since it is not done in maven-report-exec any more
Modified:
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java
Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java?rev=1598434&r1=1598433&r2=1598434&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java Thu May 29 22:26:39 2014
@@ -231,9 +231,23 @@ public abstract class AbstractSiteRender
{
throw new MojoExecutionException( "could not get MavenReportExecutor component", e );
}
- return mavenReportExecutor.buildMavenReports( mavenReportExecutorRequest );
+
+ List<MavenReportExecution> allReports = mavenReportExecutor.buildMavenReports( mavenReportExecutorRequest );
+
+ // filter out reports that can't be generated
+ List<MavenReportExecution> reportExecutions = new ArrayList<MavenReportExecution>( allReports.size() );
+ for ( MavenReportExecution exec : allReports )
+ {
+ if ( canGenerateReport( exec ) )
+ {
+ reportExecutions.add( exec );
+ }
+ }
+
+ return reportExecutions;
}
+ // Maven 2
List<MavenReportExecution> reportExecutions = new ArrayList<MavenReportExecution>( reports.size() );
for ( MavenReport report : reports )
{
@@ -245,6 +259,21 @@ public abstract class AbstractSiteRender
return reportExecutions;
}
+ private boolean canGenerateReport( MavenReportExecution exec )
+ {
+ ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
+ try
+ {
+ Thread.currentThread().setContextClassLoader( exec.getClassLoader() );
+
+ return exec.getMavenReport().canGenerateReport();
+ }
+ finally
+ {
+ Thread.currentThread().setContextClassLoader( originalClassLoader );
+ }
+ }
+
protected SiteRenderingContext createSiteRenderingContext( Locale locale )
throws MojoExecutionException, IOException, MojoFailureException
{