pmd/README.md

66 lines
2.2 KiB
Markdown
Raw Normal View History

# PMD
2012-11-17 17:00:27 +01:00
[![Build Status](https://travis-ci.org/pmd/pmd.svg?branch=master)](https://travis-ci.org/pmd/pmd)
## About
2013-05-01 14:56:22 +02:00
PMD is a source code analyzer. It finds common programming flaws like unused variables, empty catch blocks,
2016-04-06 09:59:34 +02:00
unnecessary object creation, and so forth. It supports Java, JavaScript, Salesforce.com Apex, XML, XSL.
2013-05-01 14:56:22 +02:00
Additionally it includes CPD, the copy-paste-detector. CPD finds duplicated code in
Java, C, C++, C#, PHP, Ruby, Fortran, JavaScript, Salesforce.com Apex, Perl, Swift.
2012-11-17 17:00:27 +01:00
## Source
2013-05-01 14:56:22 +02:00
Our latest source of PMD can be found on [GitHub]. Fork us!
### How to build PMD?
2016-04-10 16:55:25 +02:00
You'll need to have a `~/.m2/toolchains.xml` file setup with jdk 1.6 (for pmd 5.3.x), jdk 1.7 (for pmd 5.4.x and pmd 5.5.x)
and jdk 1.8 (for some features in pmd 5.5.x). See [maven toolchains](https://maven.apache.org/guides/mini/guide-using-toolchains.html).
A example file can be found here: [example-toolchains.xml](https://github.com/pmd/pmd/blob/master/example-toolchains.xml).
Use maven in the top-level directory:
mvn clean package
This will create the zip files in the directory `pmd-dist/target`:
cd pmd-dist/target
ls *.zip
That's all !
2016-04-23 13:29:59 +02:00
### How to build the documentation (maven site)?
Building the maven site is done with the following commands:
mvn clean install -DskipTests=true
mvn install site site:stage -Psite
You'll find the built site in the directory `target/staging/`.
### Bug Reports
We are using Sourceforge for bug tracking. Please file your bugs at <https://sourceforge.net/p/pmd/bugs/>.
### Pull Requests
Pull requests are always welcome: <https://github.com/pmd/pmd/pulls>
2016-12-02 15:13:45 +01:00
### Code Style
PMD uses checkstyle to enforce a common code style.
See [pmd-checkstyle-config.xml](https://github.com/pmd/build-tools/blob/master/config/src/main/resources/net/sourceforge/pmd/pmd-checkstyle-config.xml) for the configuration and
[the eclipse configuration files](https://github.com/pmd/build-tools/tree/master/config/eclipse) that can
be imported into a fresh workspace.
## News and Website
2013-05-01 14:56:22 +02:00
More information can be found on our [Website] and on [SourceForge].
[GitHub]: https://github.com/pmd/pmd
[Website]: https://pmd.github.io
2013-05-01 14:56:22 +02:00
[SourceForge]: https://sourceforge.net/projects/pmd/