pmd:check
Full name:
org.apache.maven.plugins:maven-pmd-plugin:3.24.0:check
Description:
Fails the build if there were any PMD violations in the source code.
Attributes:
- Requires a Maven project to be executed.
- The goal is thread-safe and supports parallel builds.
- Since version:
2.0
. - Binds by default to the lifecycle phase:
verify
. - Invokes the execution of the following plugin's goal prior to executing itself:
pmd
.
Required Parameters
Name | Type | Since | Description |
---|---|---|---|
<failOnViolation> |
boolean |
- |
Whether to fail the build if the validation check fails. The properties failurePriority and maxAllowedViolations control under which conditions exactly the build should be failed.Default: true User Property: pmd.failOnViolation |
<failurePriority> |
int |
- |
What priority level to fail the build on. PMD violations are assigned a priority from 1 (most severe) to 5 (least severe) according the the rule's priority. Violations at or less than this priority level are considered failures and will fail the build if failOnViolation=true and the count exceeds maxAllowedViolations . The other violations will be regarded as warnings and will be displayed in the build output if verbose=true . Setting a value of 5 will treat all violations as failures, which may cause the build to fail. Setting a value of 1 will treat all violations as warnings. Only values from 1 to 5 are valid.Default: 5 User Property: pmd.failurePriority |
<targetDirectory> |
File |
- |
The location of the XML report to check, as generated by the PMD report. User Property: project.build.directory |
Optional Parameters
Name | Type | Since | Description |
---|---|---|---|
<aggregate> |
boolean |
2.2 |
Deprecated. since 3.15.0 Use the goal pmd:aggregate-check or pmd:aggregate-cpd-check instead.Whether to build an aggregated report at the root, or build individual reports. Default: false User Property: aggregate |
<excludeFromFailureFile> |
String |
3.0 |
File 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. User Property: pmd.excludeFromFailureFile |
<maxAllowedViolations> |
int |
3.10.0 |
The maximum number of failures allowed before execution fails. Used in conjunction with failOnViolation=true and utilizes failurePriority . This value has no meaning if failOnViolation=false . If the number of failures is greater than this number, the build will be failed. If the number of failures is less than or equal to this value, then the build will not be failed.Default: 0 User Property: pmd.maxAllowedViolations |
<printFailingErrors> |
boolean |
3.0 |
Print details of errors that cause build failure Default: false User Property: pmd.printFailingErrors |
<skip> |
boolean |
- |
Skip the PMD checks. Most useful on the command line via "-Dpmd.skip=true". Default: false User Property: pmd.skip |
<verbose> |
boolean |
- |
Print details of check failures to build output. Default: false User Property: pmd.verbose |
Parameter Details
<aggregate>
Deprecated.
since 3.15.0 Use the goal
since 3.15.0 Use the goal
pmd:aggregate-check
or pmd:aggregate-cpd-check
instead.Whether to build an aggregated report at the root, or build individual reports.
- Type:
boolean
- Since:
2.2
- Required:
No
- User Property:
aggregate
- Default:
false
<excludeFromFailureFile>
File 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.
- Type:
java.lang.String
- Since:
3.0
- Required:
No
- User Property:
pmd.excludeFromFailureFile
<failOnViolation>
Whether to fail the build if the validation check fails. The properties
failurePriority
and maxAllowedViolations
control under which conditions exactly the build should be failed.- Type:
boolean
- Required:
Yes
- User Property:
pmd.failOnViolation
- Default:
true
<failurePriority>
What priority level to fail the build on. PMD violations are assigned a priority from 1 (most severe) to 5 (least severe) according the the rule's priority. Violations at or less than this priority level are considered failures and will fail the build if
failOnViolation=true
and the count exceeds maxAllowedViolations
. The other violations will be regarded as warnings and will be displayed in the build output if verbose=true
. Setting a value of 5 will treat all violations as failures, which may cause the build to fail. Setting a value of 1 will treat all violations as warnings. Only values from 1 to 5 are valid.- Type:
int
- Required:
Yes
- User Property:
pmd.failurePriority
- Default:
5
<maxAllowedViolations>
The maximum number of failures allowed before execution fails. Used in conjunction with
failOnViolation=true
and utilizes failurePriority
. This value has no meaning if failOnViolation=false
. If the number of failures is greater than this number, the build will be failed. If the number of failures is less than or equal to this value, then the build will not be failed.- Type:
int
- Since:
3.10.0
- Required:
No
- User Property:
pmd.maxAllowedViolations
- Default:
0
<printFailingErrors>
Print details of errors that cause build failure
- Type:
boolean
- Since:
3.0
- Required:
No
- User Property:
pmd.printFailingErrors
- Default:
false
<skip>
Skip the PMD checks. Most useful on the command line via "-Dpmd.skip=true".
- Type:
boolean
- Required:
No
- User Property:
pmd.skip
- Default:
false
<targetDirectory>
The location of the XML report to check, as generated by the PMD report.
- Type:
java.io.File
- Required:
Yes
- User Property:
project.build.directory
<verbose>
Print details of check failures to build output.
- Type:
boolean
- Required:
No
- User Property:
pmd.verbose
- Default:
false