diff --git a/pmd/file b/pmd/file
new file mode 100644
index 0000000000..dd17d7949b
--- /dev/null
+++ b/pmd/file
@@ -0,0 +1,413 @@
+
+ A general note - most plugins include the PMD jar file, which has the rulesets
+ inside it. So even though the rulesets parameter that some plugins
+ use (i.e., "rulesets/unusedcode.xml") looks like a filesystem reference, it's really
+ being used by a getResourceAsStream() call to load it out of the PMD jar file.
+ BlueJ is a teaching IDE. To install the PMD extension for BlueJ, download
+ the PMDExtension jar file
+ and place it in your Here's how to set up PMD with Omnicore's CodeGuide (taken from here):
+ Now you can right click on a source directory, select the PMD tool and a dialog box will appear.
+ Type in the name of a rule set (e.g. unusedcode). PMD is then executed on the directory you
+ selected with the rule set you specified. Since CodeGuide understands the emacs syntax you can
+ click on the file name and CodeGuide will jump to that file and line number. Note: I set this up on Mac OS X. It should work on other unix variations just the same.
+ Of course you need to change the "Executable" setting above to where your PMD is installed.
+ On Windows you need to use the pmd.bat file instead of pmd.sh. If you haven't heard of CodeGuide before, check it out.
+ It's a great IDE. To install the PMD plugin for Eclipse: Alternatively, you can download the latest zip file and follow the above procedures
+except for using "New local site" and browsing to the downloaded zip file.
+To configure PMD, select "Windows"->"Preferences", then select PMD.
+
+To run PMD, right-click on a project node and select "PMD"->"Check code with PMD".
+
+To run the duplicate code detector, right-click on a project node and
+ select "PMD"->"Find suspect cut and paste". The report will be placed in a "reports" directory
+ in a file called "cpd-report.txt".
+
+To find additional help for other features, please read included help by selecting
+Help->Help Contents and browse the "How to..." section in the "PMD Plugin Documentation" book.
+
+After installing an update, if you get an Exception such as "java.lang.RuntimeException: Couldn't find that class xxxxx",
+try deleting the ruleset.xml file in the .metadata/plugins/net.sourceforge.pmd.eclipse directory in your workspace.
+ To get Eclipse to not flag the @SuppressWarnings("PMD") annotation, look
+ under the menu headings Java -> Compiler -> Errors/Warnings -> Annotations -> Unhandled Warning Token.
+ Integration with GNU Emacs is performed through an ELisp package, pmd.el.
+ It supports two commands, "pmd-current-buffer" and "pmd-current-dir".
+ The output is captured in a compilation buffer which allows the user to "jump"
+ directly to the source code position associated with the PMD warnings.
+ Here's how to set up the Gel plugin: That's pretty much it. Now you can open a Java project and click on Plugins->PMD and
+ a configuration panel will pop up. You can pick which ruleset you want to run and
+ you can also pick whether you want to run PMD on the current file or on every
+ source file in your project. You can use an integrated plugin or just use it as an IDEA "External Tool". Amit Dev wrote an integrated plugin for IDEA; you can download that from the IntelliJ plugins site. Here's how to set it up as an "External Tool": That's pretty much it. Now you can right click on a source directory and select PMD, it'll run recursively on the source files, and the results should
+ be displayed in a window and hyperlinked into the correct file and line of code. I usually
+ right-click on the message window title bar and unselect "autohide" so the window doesn't go
+ away every time I fix something in the code window. QAPlug is an Intellij IDEA plugin to manage code quality. It integrates no less than Checkstyle, FindBugs, and PMD. The plugin is available at http://www.qaplug.com Also available at the JetBrains site, QAPlug-PMD
+ and QAPlug.
+To enable this OpenTool in JBuilder: When running PMD, the results will be displayed in the MessageView under a tab called PMD Results. If you click on a
+violation message within this view, you will be taken to the line in the source code where the violation was detected.
+ Things still to do:
+
+
+
+
+ IDE
+ SVN Module
+ Maintainers
+
+
+ BlueJ
+ pmd-bluej
+ Tom Copeland
+
+
+ CodeGuide
+ N/A
+ Austin Moore
+
+
+ Eclipse
+ pmd-eclipse
+ Philippe Herlin
+
+
+ Emacs
+ pmd-emacs
+ Nascif Abousalh Neto
+
+
+ Gel
+ pmd-gel
+ Andrei Lumianski
+
+
+ IntelliJ IDEA
+ N/A
+ Amit Dev, Tom Copeland
+
+
+ IntelliJ IDEA - QAPlug
+ N/A
+ Jakub SÅawiÅski
+
+
+ JBuilder
+ pmd-jbuilder
+ Tom Copeland
+
+
+ JCreator
+ N/A
+ Brant Gurganus
+
+
+ JDeveloper
+ pmd-jdeveloper
+ Tom Copeland
+
+
+ JEdit
+ pmd-jedit
+ Jiger Patel
+
+
+ Maven
+ N/A
+ Vincent Massol
+
+
+ Maven 2
+ N/A
+ Vincent Massol
+
+
+ NetBeans/Sun Java Studio Enterprise/Creator
+ pmd-netbeans
+ Radim Kubacki
+
+
+ TextPad
+ N/A
+ Jeff Epstein
+
+
+WebLogic Workshop 8.1.x
+ N/A
+ Kevin Conaway
+ bluej/lib/extensions/
directory.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ What you can do:
+jbuilder/lib/ext/
directory
+
+
+
+
+
To run PMD on a project, just pick pmd from the Tools menu.
+ +To install the extension for JDeveloper 10.1.2, download the binary release and unzip it + into your jdev/lib/ext directory. Then restart JDeveloper. To use it, open the +Tools-&Preferences menu, click on the PMD option, and select +a couple of rules to try. To run it, right click on either +a Java source file or a .jpr file (i.e., a project file) and +select PMD. Any rule violations should show up in a +LogWindow at the bottom of the screen. +
+To install the extension for JDeveloper 10.1.3, use JDeveloper's built in "update center" + functionality. Fire up JDeveloper, click "Help", click "Check for Updates", + then click "Add" to add a new update center and enter: +
Click your way through the ensuing dialogs and you'll install the plugin. Note + that I've set up the plugin for the latest JDeveloper 10.1.3 EA, so if you're using an earlier + preview release of 10.1.3 it might not work.
+The way I use the JEdit plugin is:
+Note that you can select individual rules by going to Utilities->Global Options->Plugin Options->PMD. Also, +you can change the plugin to prompt you for a directory to check by going to that same menu and +selecting the "Ask for Directory" checkbox.
+Please see the Maven plugins web site for more information.
+Please see the Maven 2 plugin + web site for more information. Also, the bug tracker for this plugin is here.
+Here's how to set up the Netbeans plugin:
+D:\java\jdk_142\
. This means that D:\java\jdk_142\bin\java.exe
exists.D:\java\pmd-5.0\
. This means that D:\java\pmd-5.0\lib\pmd-5.0.jar
(among other jar files in the same directory) exist.D:\java\jdk_142\bin\java.exe
and click the Open button. In the center pane of the Preferences dialog, an item "Java" has now been added, and is currently selected.+
' directly to its left.-classpath D:\java\pmd-5.0\lib\pmd-5.0.jar;D:\java\pmd-5.0\lib\asm-3.2.jar;D:\java\pmd-5.0\lib\jaxen-1.1.1.jar net.sourceforge.pmd.PMD $FileDir net.sourceforge.pmd.renderers.TextPadRenderer E:\directory\my_pmd_ruleset.xml -debug
+ jaxen-1.1.1.jar;
' and 'asm-3.2.jar;
'. They are there to prevent the text from exceeding the right side of your screen)$FileDir
Checked
Checked
^\([^(]+\)(\([0-9]+\),
1
2
$FileDir
' with '$File
', in the Parameters textbox.E:\directory\my_pmd_ruleset.xml
' with the ruleset of your choice. For example, basic
.Ctrl+Page Up
Ctrl+Page Down
Ctrl+Page Down
. This opens an empty, read-only text document (titled "Command Results"). When PMD completes its analysis, this document will be populated with a listing of violated rules (or "Command completed successfully" indicating no violations).Ctrl+Page Up
. This opens an empty, read-only text document (titled "Command Results"). When PMD completes its analysis, this document will be populated with a listing of violated rules (or "Command completed successfully" indicating no violations).Because directory analysis may take a while, you may choose to cancel this operation. Do so by closing the (blank Command Results) document, and then confirming that, "yes, I do really want to exit the tool".
+Please see the WebLogic Workshop plugin project home page for more information.
+QAPlug is an Intellij IDEA plugin to manage code quality. It integrates no less than Checkstyle, FindBugs, and PMD.
+The plugin is available at http://www.qaplug.com
+Also available at the JetBrains site, QAPlug-PMD + and QAPlug.
+