Package org.apache.maven.plugins.pmd
Class AbstractPmdReport
java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.apache.maven.reporting.AbstractMavenReport
org.apache.maven.plugins.pmd.AbstractPmdReport
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo,org.apache.maven.reporting.MavenMultiPageReport,org.apache.maven.reporting.MavenReport
public abstract class AbstractPmdReport
extends org.apache.maven.reporting.AbstractMavenReport
Base class for the PMD reports.
- Version:
- $Id$
- Author:
- Brett Porter
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected booleanDeprecated.protected StringFile that lists classes and rules to be excluded from failures.protected Map<File, PmdFileInfo> The files that are being analyzed.protected StringSet the output format type, in addition to the HTML report.protected booleanRun PMD on the tests as well.protected booleanWhether to include the XML files generated by PMD/CPD in theAbstractMavenReport.getReportOutputDirectory().protected org.apache.maven.execution.MavenSessionThe current build session instance.protected booleanDeprecated.With 3.22.0 and the upgrade to PMD 7, this parameter has no effect anymore.protected booleanSkip the PMD/CPD report generation if there are no violations or duplications found.protected FileThe output directory for the intermediate XML report.Fields inherited from class org.apache.maven.reporting.AbstractMavenReport
locale, mojoExecution, outputDirectory, outputFormat, outputTimestamp, project, reactorProjects, remoteProjectRepositories, repoSession, siteDirectory, siteRenderer, siteToolFields inherited from interface org.apache.maven.reporting.MavenReport
CATEGORY_PROJECT_INFORMATION, CATEGORY_PROJECT_REPORTS, ROLEFields inherited from interface org.apache.maven.plugin.Mojo
ROLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanprotected Collection<org.apache.maven.project.MavenProject> protected Map<File, PmdFileInfo> Convenience method to get files the PMD tool will analyze.protected org.apache.maven.plugin.MojoExecutionprotected org.apache.maven.project.MavenProjectprotected List<org.apache.maven.project.MavenProject> protected booleanprotected booleanisXml()Methods inherited from class org.apache.maven.reporting.AbstractMavenReport
canGenerateReport, closeReport, constructXrefLocation, execute, executeReport, generate, generate, getCategoryName, getInputEncoding, getLocale, getOutputDirectory, getOutputEncoding, getReportOutputDirectory, getSink, getSinkFactory, getSiteRenderer, getXrefLocation, isExternalReport, setReportOutputDirectoryMethods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContextMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.maven.reporting.MavenReport
getDescription, getName, getOutputName, getOutputPath
-
Field Details
-
targetDirectory
The output directory for the intermediate XML report. -
format
Set the output format type, in addition to the HTML report. Must be one of: "none", "csv", "xml", "txt" or the full class name of the PMD renderer to use. See the net.sourceforge.pmd.renderers package javadoc for available renderers. XML is produced in any case, since this format is needed for the check goals (pmd:check, pmd:aggregator-check, pmd:cpd-check, pmd:aggregator-cpd-check). -
includeTests
@Parameter(defaultValue="false") protected boolean includeTestsRun PMD on the tests as well.- Since:
- 2.2
-
aggregate
Deprecated.since 3.15.0 Use the goalspmd:aggregate-pmdandpmd:aggregate-cpdinstead. See FAQ: Why do I get sometimes false positive and/or false negative violations? for an explanation.Whether to build an aggregated report at the root, or build individual reports.- Since:
- 2.2
-
includeXmlInReports
@Parameter(defaultValue="false") protected boolean includeXmlInReportsWhether to include the XML files generated by PMD/CPD in theAbstractMavenReport.getReportOutputDirectory().- Since:
- 3.0
-
skipEmptyReport
@Parameter(defaultValue="false") protected boolean skipEmptyReportSkip the PMD/CPD report generation if there are no violations or duplications found. Defaults tofalse.Note: the default value was changed from
truetofalsewith version 3.13.0.- Since:
- 3.1
-
excludeFromFailureFile
@Parameter(property="pmd.excludeFromFailureFile", defaultValue="") protected String excludeFromFailureFileFile that lists classes and rules to be excluded from failures. For PMD, this is a properties file. For CPD, this is a text file that contains comma-separated lists of classes that are allowed to duplicate.- Since:
- 3.7
-
showPmdLog
Deprecated.With 3.22.0 and the upgrade to PMD 7, this parameter has no effect anymore. The PMD log is now always redirected into the maven log and this can't be disabled by this parameter anymore. In order to disable the logging, see Maven Logging. You'd need to start maven withMAVEN_OPTS=-Dorg.slf4j.simpleLogger.log.net.sourceforge.pmd=off mvn <goals>.Redirect PMD log into maven log out. When enabled, the PMD log output is redirected to maven, so that it is visible in the console together with all the other log output. Also, if maven is started with the debug flag (-Xor--debug), the PMD logger is also configured for debug.- Since:
- 3.9.0
-
session
@Parameter(defaultValue="${session}", required=true, readonly=true) protected org.apache.maven.execution.MavenSession sessionThe current build session instance. This is used for toolchain manager API calls and for dependency resolver API calls. -
filesToProcess
The files that are being analyzed.
-
-
Constructor Details
-
AbstractPmdReport
public AbstractPmdReport()
-
-
Method Details
-
getProject
protected org.apache.maven.project.MavenProject getProject()- Overrides:
getProjectin classorg.apache.maven.reporting.AbstractMavenReport
-
getReactorProjects
-
getMojoExecution
protected org.apache.maven.plugin.MojoExecution getMojoExecution() -
getFilesToProcess
Convenience method to get files the PMD tool will analyze.- Returns:
- the files the PMD tool will analyze
- Throws:
IOException- if an I/O error occurs during construction of the canonical paths of the files
-
isXml
protected boolean isXml() -
canGenerateReportInternal
protected boolean canGenerateReportInternal() throws org.apache.maven.reporting.MavenReportException- Throws:
org.apache.maven.reporting.MavenReportException
-
getJdkToolchain
-
isAggregator
protected boolean isAggregator() -
getAggregatedProjects
-
pmd:aggregate-pmdandpmd:aggregate-cpdinstead.