forked from phoedos/pmd
[doc] Restructure Tools + Integrations
This commit is contained in:
@ -45,9 +45,20 @@ entries:
|
||||
- title: Suppressing
|
||||
url: /pmd_userdocs_suppressing.html
|
||||
output: web, pdf
|
||||
- title: Tools / Integrations
|
||||
url: /pmd_userdocs_tools.html
|
||||
output: web, pdf
|
||||
subfolders:
|
||||
- title: Tools / Integrations
|
||||
output: web, pdf
|
||||
subfolderitems:
|
||||
- title: Maven PMD Plugin
|
||||
output: web, pdf
|
||||
url: /pmd_userdocs_tools_maven.html
|
||||
- title: Ant
|
||||
output: web, pdf
|
||||
url: /pmd_userdocs_tools_ant.html
|
||||
- title: Other Tools / Integrations
|
||||
output: web, pdf
|
||||
url: /pmd_userdocs_tools.html
|
||||
|
||||
- title: FAQ
|
||||
url: /pmd_userdocs_faq.html
|
||||
output: web, pdf
|
||||
|
@ -6,8 +6,6 @@ folder: pmd/userdocs
|
||||
---
|
||||
|
||||
* IDE plugins
|
||||
* build tool plugins
|
||||
* [Ant Task Usage](/pmd_userdocs_ant.html)
|
||||
* [Continuous Integrations plugins](/pmd_userdocs_ci.html)
|
||||
* GUIs
|
||||
|
||||
@ -123,20 +121,6 @@ folder: pmd/userdocs
|
||||
<td>Jiger Patel, Dale Anson</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="#maven">Maven</a></td>
|
||||
<td></td>
|
||||
<td>N/A</td>
|
||||
<td>N/A</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="#maven-2-and-3">Maven 2 and 3</a></td>
|
||||
<td></td>
|
||||
<td>N/A</td>
|
||||
<td><a href="http://maven.apache.org/plugins/maven-pmd-plugin/">apache.org / maven</a></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="#netbeans">NetBeans</a></td>
|
||||
<td><a href="http://kenai.com/projects/sqe/">SQE</a></td>
|
||||
@ -385,145 +369,6 @@ Also, you can change the plugin to prompt you for a directory to check by going
|
||||
selecting the "Ask for Directory" checkbox.
|
||||
|
||||
|
||||
### Maven
|
||||
|
||||
This section is about the maven 1 PMD plugin. The maven 2 PMD plugin page is available
|
||||
[below](#Maven_2_and_3).
|
||||
|
||||
#### Running the pmd plugin
|
||||
|
||||
##### report
|
||||
|
||||
To include the Maven report in the project reports section add the following line under
|
||||
the reports element in your project.xml:
|
||||
|
||||
<report>maven-pmd-plugin</report>
|
||||
|
||||
This will add an entry to the 'project reports' section with the PMD report.
|
||||
|
||||
##### manual
|
||||
|
||||
To run PMD on a Maven project without adding it as a report, simply run
|
||||
|
||||
maven pmd xdoc
|
||||
|
||||
The PMD plugin writes the report in XML which will then be formatted into more readable HTML.
|
||||
|
||||
#### Customization
|
||||
|
||||
##### Changing rulesets
|
||||
|
||||
To specify a set of official, built-in rulesets to be used set them in the property
|
||||
<em>maven.pmd.rulesets</em>. You can include this setting in your project.properties file.
|
||||
|
||||
A clean strategy for customizing which rules to use for a project is to write a ruleset file.
|
||||
In this file you can define which rules to use, add custom rules, and
|
||||
customizing which rules to include/exclude from official rulesets. More information on
|
||||
writing a ruleset can be found [here](/pmd_userdocs_understanding_rulesets.html).
|
||||
|
||||
Add to the root of your Maven project a pmd.xml file which contains the ruleset mentioned in
|
||||
the previous paragraph. Add the following property to your project now:
|
||||
|
||||
maven.pmd.rulesetfiles = ${basedir}/pmd.xml
|
||||
|
||||
#### Reference
|
||||
|
||||
See the PMD plugin project page here:
|
||||
<http://maven.apache.org/maven-1.x/plugins/pmd/>
|
||||
|
||||
|
||||
### Maven 2 and 3
|
||||
|
||||
#### Running the pmd plugin
|
||||
|
||||
##### report
|
||||
|
||||
To include the mvn report in the project reports section add the following lines under
|
||||
the reports element in your pom.xml:
|
||||
|
||||
|
||||
<project>
|
||||
...
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
...
|
||||
</project>
|
||||
|
||||
This will add an entry to the 'project reports' section with the PMD report.
|
||||
|
||||
|
||||
##### manual
|
||||
|
||||
To run PMD on a Maven project without adding it as a report, simply run
|
||||
|
||||
mvn pmd:pmd
|
||||
|
||||
The PMD plugin writes the report in XML which will then be formatted into more readable HTML.
|
||||
|
||||
#### Customization
|
||||
|
||||
##### Changing rulesets
|
||||
|
||||
To specify a ruleset, simply edit the previous configuration:
|
||||
|
||||
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<configuration>
|
||||
<rulesets>
|
||||
<ruleset>/rulesets/java/braces.xml</ruleset>
|
||||
<ruleset>/rulesets/java/naming.xml</ruleset>
|
||||
<ruleset>d:\rulesets\strings.xml</ruleset>
|
||||
<ruleset>http://localhost/design.xml</ruleset>
|
||||
</rulesets>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
|
||||
The value of the 'ruleset' value can either be a relative address, an absolute address or even an url.
|
||||
|
||||
A clean strategy for customizing which rules to use for a project is to write a ruleset file.
|
||||
In this file you can define which rules to use, add custom rules, and
|
||||
customizing which rules to include/exclude from official rulesets. More information on
|
||||
writing a ruleset can be found [here](/pmd_userdocs_understanding_rulesets.html).
|
||||
Note that if you include other rulesets in your own rulesets, you have to be sure that the plugin
|
||||
will be able to resolve those other ruleset references.
|
||||
|
||||
##### Other configurations
|
||||
|
||||
The Maven 2 PMD plugin allows you to configure CPD, targetJDK, and the use of XRef to link
|
||||
the report to html source files, and the file encoding:
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<configuration>
|
||||
<linkXRef>true</linkXRef>
|
||||
<sourceEncoding>ISO-8859-1</sourceEncoding>
|
||||
<minimumTokens>30</minimumTokens>
|
||||
<targetJdk>1.4</targetJdk>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
#### Reference
|
||||
|
||||
For more data, please see the well documented PMD plugin project page here:
|
||||
<http://maven.apache.org/plugins/maven-pmd-plugin/index.html>
|
||||
Also, the bug tracker for this plugin is [here](http://jira.codehaus.org/browse/MPMD).
|
||||
|
||||
|
||||
|
||||
|
||||
### NetBeans
|
||||
|
||||
The [SQE](http://kenai.com/projects/sqe/) project includes PMD integration for NetBeans.
|
||||
|
@ -1,8 +1,6 @@
|
||||
---
|
||||
title: Ant Task Usage
|
||||
sidebar: pmd_sidebar
|
||||
permalink: pmd_userdocs_ant.html
|
||||
folder: pmd/userdocs
|
||||
permalink: pmd_userdocs_tools_ant.html
|
||||
---
|
||||
|
||||
## PMD
|
179
docs/pages/pmd/userdocs/tools/maven.md
Normal file
179
docs/pages/pmd/userdocs/tools/maven.md
Normal file
@ -0,0 +1,179 @@
|
||||
---
|
||||
title: Maven PMD Plugin
|
||||
permalink: /pmd_userdocs_tools_maven.html
|
||||
last_updated: August 2017
|
||||
---
|
||||
|
||||
## Maven 2 and 3
|
||||
|
||||
### Running the pmd plugin
|
||||
|
||||
#### report
|
||||
|
||||
To include the mvn report in the project reports section add the following lines under
|
||||
the reports element in your pom.xml:
|
||||
|
||||
``` xml
|
||||
<project>
|
||||
...
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
...
|
||||
</project>
|
||||
```
|
||||
|
||||
This will add an entry to the 'project reports' section with the PMD report when you build the maven site.
|
||||
|
||||
|
||||
#### manual
|
||||
|
||||
To run PMD on a Maven project without adding it as a report, simply run
|
||||
|
||||
mvn pmd:pmd
|
||||
|
||||
The PMD plugin writes the report in XML which will then be formatted into more readable HTML.
|
||||
|
||||
|
||||
#### Integrated into the build process
|
||||
|
||||
You can also run PMD automatically when building your project. You even let the build fail, if
|
||||
PMD finds some violations. Therefore the `check` goal is used:
|
||||
|
||||
``` xml
|
||||
<project>
|
||||
...
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<configuration>
|
||||
<failOnViolation>true</failOnViolation> <!-- this is actually true by default, but can be disabled -->
|
||||
<printFailingErrors>true</printFailingErrors>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>check</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
...
|
||||
</project>
|
||||
```
|
||||
|
||||
This will run PMD automatically during the `verify` phase of the build. You can additionally run CPD, if
|
||||
you add `cpd-check` as a goal.
|
||||
|
||||
|
||||
### Customization
|
||||
|
||||
#### Changing rulesets
|
||||
|
||||
To specify a ruleset, simply edit the previous configuration:
|
||||
|
||||
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<configuration>
|
||||
<rulesets>
|
||||
<ruleset>/rulesets/java/braces.xml</ruleset>
|
||||
<ruleset>/rulesets/java/naming.xml</ruleset>
|
||||
<ruleset>d:\rulesets\strings.xml</ruleset>
|
||||
<ruleset>http://localhost/design.xml</ruleset>
|
||||
</rulesets>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
|
||||
The value of the 'ruleset' value can either be a relative address, an absolute address or even an url.
|
||||
|
||||
A clean strategy for customizing which rules to use for a project is to write a ruleset file.
|
||||
In this file you can define which rules to use, add custom rules, and
|
||||
customizing which rules to include/exclude from official rulesets. More information on
|
||||
writing a ruleset can be found [here](pmd_userdocs_understanding_rulesets.html).
|
||||
Note that if you include other rulesets in your own rulesets, you have to be sure that the plugin
|
||||
will be able to resolve those other ruleset references.
|
||||
|
||||
#### Other configurations
|
||||
|
||||
The Maven PMD plugin allows you to configure CPD, targetJDK, and the use of XRef to link
|
||||
the report to html source files, and the file encoding:
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-pmd-plugin</artifactId>
|
||||
<configuration>
|
||||
<linkXRef>true</linkXRef>
|
||||
<sourceEncoding>ISO-8859-1</sourceEncoding>
|
||||
<minimumTokens>30</minimumTokens>
|
||||
<targetJdk>1.4</targetJdk>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
### Reference
|
||||
|
||||
For more information, please see the well documented PMD plugin project page here:
|
||||
<http://maven.apache.org/plugins/maven-pmd-plugin/index.html>.
|
||||
Also, the bug tracker for this plugin is [here](http://jira.codehaus.org/browse/MPMD).
|
||||
|
||||
|
||||
## Maven 1
|
||||
|
||||
{% include warning.html content="Apache Maven 1.x has reached its end of life, and is no longer supported. For more information, see the [announcement](http://maven.apache.org/maven-1.x-eol.html). Users are encouraged to migrate to the current version of Apache Maven." %}
|
||||
|
||||
This section is about the maven 1 PMD plugin.
|
||||
|
||||
### Running the pmd plugin
|
||||
|
||||
#### report
|
||||
|
||||
To include the Maven report in the project reports section add the following line under
|
||||
the reports element in your project.xml:
|
||||
|
||||
<report>maven-pmd-plugin</report>
|
||||
|
||||
This will add an entry to the 'project reports' section with the PMD report.
|
||||
|
||||
##### manual
|
||||
|
||||
To run PMD on a Maven project without adding it as a report, simply run
|
||||
|
||||
maven pmd xdoc
|
||||
|
||||
The PMD plugin writes the report in XML which will then be formatted into more readable HTML.
|
||||
|
||||
#### Customization
|
||||
|
||||
##### Changing rulesets
|
||||
|
||||
To specify a set of official, built-in rulesets to be used set them in the property
|
||||
<em>maven.pmd.rulesets</em>. You can include this setting in your project.properties file.
|
||||
|
||||
A clean strategy for customizing which rules to use for a project is to write a ruleset file.
|
||||
In this file you can define which rules to use, add custom rules, and
|
||||
customizing which rules to include/exclude from official rulesets. More information on
|
||||
writing a ruleset can be found [here](/pmd_userdocs_understanding_rulesets.html).
|
||||
|
||||
Add to the root of your Maven project a pmd.xml file which contains the ruleset mentioned in
|
||||
the previous paragraph. Add the following property to your project now:
|
||||
|
||||
maven.pmd.rulesetfiles = ${basedir}/pmd.xml
|
||||
|
||||
#### Reference
|
||||
|
||||
See the PMD plugin project page here:
|
||||
<http://maven.apache.org/maven-1.x/plugins/pmd/>
|
Reference in New Issue
Block a user