##### For example

- Run PMD on a Sourceforge project

## Best Practices

### Choose the rules that are right for you

Running every ruleset will result in a huge number of rule violations, most of which will be unimportant. Having to sort through a thousand line report to find the few you're really interested in takes all the fun out of things.

Instead, start with some of the obvious rulesets - just run unusedcode and fix any unused locals and fields. Then, run basic and fix all the empty `if` statements and such-like. Then peruse the design and controversial rulesets and use the ones you like via a custom ruleset.

### PMD rules are not set in stone

Generally, pick the ones you like, and ignore or suppress the warnings you don't like. It's just a tool.

### PMD IDE plugins are nice

Using PMD within your IDE is much more enjoyable than flipping back and forth between an HTML report and your IDE. Most IDE plugins have the "click on the rule violation and jump to that line of code" feature. Find the PMD plugin for your IDE, install it, and soon you'll be fixing problems much faster.

Suggestions? Comments? Post them here. Thanks!