Class MavenReportExecution

java.lang.Object
org.apache.maven.reporting.exec.MavenReportExecution

public class MavenReportExecution extends Object

Since Maven 3, reporting plugins (ie MavenReports) are not anymore prepared by Maven core. This class will store all necessary information for later MavenReport generation/execution:

  • a MavenReport,
  • the goal name associated to the report,
  • the associated ClassLoader for the report generation,
  • the Plugin associated to the MavenReport.

With this bean, a plugin wanting to generate a report (= "execute" the report) has to call the

invalid reference
MavenReport#generate(org.apache.maven.doxia.sink.Sink, java.util.Locale)
method, setting the current Thread classLoader first with classLoader.

This bean is instantiated by MavenReportExecutor.

  • Field Details

    • mavenReport

      private org.apache.maven.reporting.MavenReport mavenReport
    • classLoader

      private ClassLoader classLoader
    • plugin

      private org.apache.maven.model.Plugin plugin
    • goal

      private final String goal
  • Constructor Details

    • MavenReportExecution

      public MavenReportExecution(String goal, org.apache.maven.model.Plugin plugin, org.apache.maven.reporting.MavenReport mavenReport, ClassLoader classLoader)
    • MavenReportExecution

      public MavenReportExecution(org.apache.maven.model.Plugin plugin, org.apache.maven.reporting.MavenReport mavenReport, ClassLoader classLoader)
    • MavenReportExecution

      public MavenReportExecution(org.apache.maven.reporting.MavenReport mavenReport)
  • Method Details

    • canGenerateReport

      public boolean canGenerateReport()
      execute Maven Report's canGenerate() with adequate classloader.
      Returns:
      Maven Report's canGenerate() result
    • getMavenReport

      public org.apache.maven.reporting.MavenReport getMavenReport()
    • setMavenReport

      public void setMavenReport(org.apache.maven.reporting.MavenReport mavenReport)
    • getClassLoader

      public ClassLoader getClassLoader()
    • setClassLoader

      public void setClassLoader(ClassLoader classLoader)
    • setPlugin

      public void setPlugin(org.apache.maven.model.Plugin plugin)
    • getPlugin

      public org.apache.maven.model.Plugin getPlugin()
    • getGoal

      public String getGoal()