Class ReportAggregateMojo

  • All Implemented Interfaces:
    org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo, org.apache.maven.reporting.MavenMultiPageReport, org.apache.maven.reporting.MavenReport

    @Mojo(name="report-aggregate",
          aggregator=true,
          defaultPhase=SITE)
    @Execute(phase=PACKAGE)
    public class ReportAggregateMojo
    extends ReportMojo
    Uses the configuration supplied at the top level aggregator project to run analysis on all sub-projects.

    The artifacts to compare are taken from the configurations of the child projects while the configuration of Revapi and the extensions to use are taken from the aggregator project. The analyses are run in succession using a single instance of Revapi. Therefore you need to configure your custom Revapi reporter(s) to somehow not overwrite their reports, but append to it. The default site page generator can do this and the revapi-reporter-text reporter has an append boolean parameter for this. If you're using some other reporter, consult its documentation on how to append to a report instead of overwriting it.

    Since:
    0.5.0
    Author:
    Lukas Krejci
    • Constructor Detail

      • ReportAggregateMojo

        public ReportAggregateMojo()
    • Method Detail

      • getOutputName

        public String getOutputName()
        Specified by:
        getOutputName in interface org.apache.maven.reporting.MavenReport
        Overrides:
        getOutputName in class ReportMojo
      • getReportOutputDirectory

        public File getReportOutputDirectory()
        Specified by:
        getReportOutputDirectory in interface org.apache.maven.reporting.MavenReport
        Overrides:
        getReportOutputDirectory in class org.apache.maven.reporting.AbstractMavenReport
      • setReportOutputDirectory

        public void setReportOutputDirectory​(File reportOutputDirectory)
        Specified by:
        setReportOutputDirectory in interface org.apache.maven.reporting.MavenReport
        Overrides:
        setReportOutputDirectory in class org.apache.maven.reporting.AbstractMavenReport
      • getDescription

        public String getDescription​(Locale locale)
        Specified by:
        getDescription in interface org.apache.maven.reporting.MavenReport
        Overrides:
        getDescription in class ReportMojo
      • canGenerateReport

        public boolean canGenerateReport()
        Specified by:
        canGenerateReport in interface org.apache.maven.reporting.MavenReport
        Overrides:
        canGenerateReport in class ReportMojo
      • executeReport

        protected void executeReport​(Locale locale)
                              throws org.apache.maven.reporting.MavenReportException
        Overrides:
        executeReport in class ReportMojo
        Throws:
        org.apache.maven.reporting.MavenReportException
      • findRevapi

        protected static org.apache.maven.model.Plugin findRevapi​(org.apache.maven.project.MavenProject project)
      • getArtifacts

        protected static String[] getArtifacts​(org.codehaus.plexus.util.xml.Xpp3Dom config,
                                               String artifactTag)