Maven Repository - POM file for Development pmd 5.0.3 5.0.3

Summary

PMD.

<p>PMD scans Java source code and looks for potential problems like:</p> <ul> <li>Possible bugs - empty try/catch/finally/switch statements</li> <li>Dead code - unused local variables, parameters and private methods</li> <li>Suboptimal code - wasteful String/StringBuffer usage</li> <li>Over....

Declaration

Here is the list of declaration for pmd. If you use Maven you can use the following code to add the dependency for this POM file.

<dependency>
   <groupId>net.sourceforge.pmd</groupId>
   <artifactId>pmd</artifactId>
   <version>5.0.3</version>
</dependency>

If you think this Maven repository POM file listing for pmd is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.





License

Name:BSD-style
URL: http://pmd.sourceforge.net/license.html.

Depends on

The pmd-5.0.3 has 13 dependencies.The most popular ones are listed in the following table along with their categories and number of artifacts depending on them.

CategoryArtifactDepended By Count
Buildant 1.8.1
Apache Ant
83
XPathjaxen 1.1.1
Jaxen is a universal Java XPath engine.
115
Consolejcommander 1.27
A Java framework to parse command line options with annotations.
21
XPathsaxon 9.1.0.8
Saxon a complete and conformant implementation of the XSLT 2.0, XQuery 1.0, and XPath 2.0 Recommendations published on 23 January 2007 by W3C
94
XPathsaxon 9.1.0.8
Saxon a complete and conformant implementation of the XSLT 2.0, XQuery 1.0, and XPath 2.0 Recommendations published on 23 January 2007 by W3C
94
Scriptingrhino 1.7R3
Rhino is an open-source implementation of JavaScript written entirely in Java. It is typically embedded into Java applications to provide scripting to end users.
34
JUnitjunit 4.4
JUnit is a regression testing framework written by Erich Gamma and Kent Beck. It is used by the developer who implements unit tests in Java.
301
ParserxercesImpl 2.9.1
Xerces2 is the next generation of high performance, fully compliant XML parsers in the Apache Xerces family. This new version of Xerces introduces the Xerces Native Interface (XNI), a complete framework for building parser components and configurations that is extremely modular and easy...
97
Developmentjavacc 4.1
JavaCC is a parser/scanner generator for Java.
6
Filecommons-io 2.2
The Commons IO library contains utility classes, stream implementations, file filters, file comparators, endian transformation classes, and much more.
60
Testing Mockmockito-all 1.9.5
Mock objects library for java
1072




Plugin

The following plugins are used in the pmd-5.0.3.jar

  1. build-helper-maven-plugin
  2. maven-antrun-plugin
  3. maven-assembly-plugin
  4. maven-checkstyle-plugin
  5. maven-clover2-plugin
  6. maven-clover2-plugin
  7. maven-compiler-plugin
  8. maven-javadoc-plugin
  9. maven-jxr-plugin
  10. maven-pmd-plugin
  11. maven-project-info-reports-plugin
  12. maven-release-plugin
  13. maven-resources-plugin
  14. maven-site-plugin
  15. maven-surefire-plugin
  16. maven-surefire-report-plugin
  17. pmd-build




Packages

The following packages are defined in the pmd-5.0.3.jar

net.sourceforge.pmd
net.sourceforge.pmd.ant
net.sourceforge.pmd.benchmark
net.sourceforge.pmd.cli
net.sourceforge.pmd.cpd
net.sourceforge.pmd.dcd
net.sourceforge.pmd.dcd.asm
net.sourceforge.pmd.dcd.graph
net.sourceforge.pmd.lang
net.sourceforge.pmd.lang.ast
net.sourceforge.pmd.lang.ast.xpath
net.sourceforge.pmd.lang.ast.xpath.saxon
net.sourceforge.pmd.lang.cpp
net.sourceforge.pmd.lang.cpp.ast
net.sourceforge.pmd.lang.dfa
net.sourceforge.pmd.lang.dfa.pathfinder
net.sourceforge.pmd.lang.dfa.report
net.sourceforge.pmd.lang.ecmascript
net.sourceforge.pmd.lang.ecmascript.ast
net.sourceforge.pmd.lang.ecmascript.rule
net.sourceforge.pmd.lang.ecmascript.rule.basic
net.sourceforge.pmd.lang.java
net.sourceforge.pmd.lang.java.ast
net.sourceforge.pmd.lang.java.dfa
net.sourceforge.pmd.lang.java.javadoc
net.sourceforge.pmd.lang.java.rule
net.sourceforge.pmd.lang.java.rule.basic
net.sourceforge.pmd.lang.java.rule.codesize
net.sourceforge.pmd.lang.java.rule.comments
net.sourceforge.pmd.lang.java.rule.controversial
net.sourceforge.pmd.lang.java.rule.coupling
net.sourceforge.pmd.lang.java.rule.design
net.sourceforge.pmd.lang.java.rule.finalizers
net.sourceforge.pmd.lang.java.rule.imports
net.sourceforge.pmd.lang.java.rule.javabeans
net.sourceforge.pmd.lang.java.rule.junit
net.sourceforge.pmd.lang.java.rule.logging
net.sourceforge.pmd.lang.java.rule.migrating
net.sourceforge.pmd.lang.java.rule.naming
net.sourceforge.pmd.lang.java.rule.optimizations
net.sourceforge.pmd.lang.java.rule.regex
net.sourceforge.pmd.lang.java.rule.strictexception
net.sourceforge.pmd.lang.java.rule.strings
net.sourceforge.pmd.lang.java.rule.sunsecure
net.sourceforge.pmd.lang.java.rule.unnecessary
net.sourceforge.pmd.lang.java.rule.unusedcode
net.sourceforge.pmd.lang.java.symboltable
net.sourceforge.pmd.lang.java.typeresolution
net.sourceforge.pmd.lang.java.typeresolution.rules
net.sourceforge.pmd.lang.java.typeresolution.rules.imports
net.sourceforge.pmd.lang.java.typeresolution.visitors
net.sourceforge.pmd.lang.java.xpath
net.sourceforge.pmd.lang.jsp
net.sourceforge.pmd.lang.jsp.ast
net.sourceforge.pmd.lang.jsp.rule
net.sourceforge.pmd.lang.jsp.rule.basic
net.sourceforge.pmd.lang.rule
net.sourceforge.pmd.lang.rule.properties
net.sourceforge.pmd.lang.rule.properties.factories
net.sourceforge.pmd.lang.rule.stat
net.sourceforge.pmd.lang.rule.xpath
net.sourceforge.pmd.lang.xml
net.sourceforge.pmd.lang.xml.ast
net.sourceforge.pmd.lang.xml.rule
net.sourceforge.pmd.lang.xpath
net.sourceforge.pmd.processor
net.sourceforge.pmd.renderers
net.sourceforge.pmd.stat
net.sourceforge.pmd.util
net.sourceforge.pmd.util.datasource
net.sourceforge.pmd.util.designer
net.sourceforge.pmd.util.filter
net.sourceforge.pmd.util.log
net.sourceforge.pmd.util.viewer
net.sourceforge.pmd.util.viewer.gui
net.sourceforge.pmd.util.viewer.gui.menu
net.sourceforge.pmd.util.viewer.model
net.sourceforge.pmd.util.viewer.util

POM File Source

Here is the content of the POM file.

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>net.sourceforge.pmd</groupId>
    <artifactId>pmd</artifactId>
    <name>PMD</name>
    <version>5.0.3</version>

    <parent>
        <groupId>org.sonatype.oss</groupId>
        <artifactId>oss-parent</artifactId>
        <version>7</version>
    </parent>

    <description>
    <![CDATA[
<p>PMD scans Java source code and looks for potential problems like:</p>
<ul>
  <li>Possible bugs - empty try/catch/finally/switch statements</li>
  <li>Dead code - unused local variables, parameters and private methods</li>
  <li>Suboptimal code - wasteful String/StringBuffer usage</li>
  <li>Overcomplicated expressions - unnecessary if statements, for loops that could be while loops</li>
  <li>Duplicate code - copied/pasted code means copied/pasted bugs</li>
</ul>
<p>You can <b><a href="http://sourceforge.net/project/showfiles.php?group_id=56262">download everything from here</a></b>, and you can get an overview of all the rules at the <a href="rules/index.html">rulesets index</a> page.</p>
<p>PMD is <a href="integrations.html">integrated</a> with JDeveloper, Eclipse, JEdit, JBuilder, BlueJ, CodeGuide, NetBeans/Sun Java Studio Enterprise/Creator, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator, and Emacs.</p>
    ]]>
  </description>
    <url>http://pmd.sourceforge.net/</url>
    <issueManagement>
        <url>http://sourceforge.net/p/pmd/bugs/</url>
    </issueManagement>
    <ciManagement>
        <notifiers>
            <notifier>
                <configuration>
                    <address>tom@infoether.com</address>
                </configuration>
            </notifier>
        </notifiers>
    </ciManagement>
    <inceptionYear>2002</inceptionYear>
    <licenses>
        <license>
            <name>BSD-style</name>
            <url>http://pmd.sourceforge.net/license.html</url>
            <distribution>repo</distribution>
        </license>
    </licenses>
    <mailingLists>
        <mailingList>
            <name>PMD development</name>
            <subscribe>http://lists.sourceforge.net/lists/listinfo/pmd-devel</subscribe>
            <unsubscribe>http://lists.sourceforge.net/lists/listinfo/pmd-devel</unsubscribe>
            <archive>http://sourceforge.net/mailarchive/forum.php?forum=pmd-devel</archive>
        </mailingList>
    </mailingLists>
    
    <scm>
        <connection>scm:git:git://github.com/pmd/pmd.git</connection>
        <developerConnection>scm:git:ssh://git@github.com/pmd/pmd.git</developerConnection>
        <url>https://github.com/pmd/pmd</url>
        <tag>pmd_releases/5.0.3</tag>
    </scm>
    <organization>
        <name>InfoEther</name>
        <url>http://pmd.sourceforge.net/</url>
    </organization>
    <properties>
        <javacc.version>4.1</javacc.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <!-- This value actually differs to maven default expectation(src/site/xdoc/)
            as we need to pre process those and we place them instead in target/generated-xdocs/.
            If the xdocs files stay in src/site/xdoc/, mvn tries to copy over the generated
            one, and complains... -->
        <src.xdocs.dir>src/site/xdocs</src.xdocs.dir>
        <pmd.website.baseurl>http://pmd.sourceforge.net/pmd-${project.version}</pmd.website.baseurl>
    </properties>

    <build>
        <testResources>
            <testResource>
                <directory>${basedir}/src/test/resources</directory>
            </testResource>
            <testResource>
                <directory>${basedir}/src/test/java</directory>
                <includes>
                    <include>**/testdata/*.java</include>
                </includes>
            </testResource>
        </testResources>
        <resources>
            <resource>
                <directory>${basedir}/src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
        <extensions>
            <extension>
                <groupId>org.apache.maven.wagon</groupId>
                <artifactId>wagon-ssh</artifactId>
                <version>2.2</version>
            </extension>
        </extensions>
        <plugins>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.5</version>
                <configuration>
                    <useDefaultDelimiters>false</useDefaultDelimiters>
                    <delimiters>
                        <delimiter>${*}</delimiter>
                    </delimiters>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.12</version>
                <configuration>
                    <forkMode>once</forkMode>
                    <argLine>-Xmx512m -Dfile.encoding=${project.build.sourceEncoding}</argLine>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.5</source>
                    <target>1.5</target>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <version>1.7</version>
                <executions>
                    <execution>
                        <id>add-javacc-generated-sources</id>
                        <goals>
                            <goal>add-source</goal>
                        </goals>
                        <configuration>
                            <sources>
                                <source>${project.build.directory}/generated-sources/javacc</source>
                            </sources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.7</version>
                <inherited>true</inherited>
                <executions>
                    <execution>
                        <id>generate-sources</id>
                        <phase>generate-sources</phase>
                        <configuration>
                            <target>
                                <ant antfile="src/main/ant/alljavacc.xml">
                                    <property name="target" value="${project.build.directory}/generated-sources/javacc" />
                                    <property name="javacc.jar" value="${settings.localRepository}/net/java/dev/javacc/javacc/${javacc.version}/javacc-${javacc.version}.jar" />
                                </ant>
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>generate-ruleset-as-xdocs</id>
                        <phase>pre-site</phase>
                        <configuration>
                            <target>
                                <echo>PMD specific tasks: generating xdocs from rulesets</echo>
                                <mkdir dir="${project.build.directory}/generated-xdocs/" />
                                <copy toDir="${project.build.directory}/generated-xdocs/" overwrite="true" verbose="true">
                                    <fileset dir="${src.xdocs.dir}" />
                                    <filterset>
                                        <filter token="VERSION" value="${project.version}" />
                                    </filterset>
                                </copy>
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>move-index-and-delete-generated-xdocs</id>
                        <phase>site</phase>
                        <configuration>
                            <target>
                                <echo>PMD site specific tasks</echo>
                                <echo>1. Copying missing images to site directory.</echo>
                                <copy todir="${project.build.directory}/site/images/">
                                    <fileset dir="${src.xdocs.dir}/images/" includes="**/*.*" />
                                </copy>
                                <echo>2. Adding missing text files to site.</echo>
                                <copy todir="${project.build.directory}/site/">
                                    <fileset dir="${src.xdocs.dir}/" includes="**/*.txt" />
                                </copy>
                                <echo>3. Deleting useless generated files.</echo>
                                <delete quiet="true">
                                    <fileset dir="${src.xdocs.dir}/rules" includes="**/*.xml" />
                                    <fileset dir="${src.xdocs.dir}/" includes="mergedruleset.xml" />
                                    <fileset dir="${project.build.directory}" includes="site/mergedruleset.html" />
                                </delete>
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>pmd-clean</id>
                        <phase>clean</phase>
                        <configuration>
                            <target>
                                <echo>PMD specific tasks: cleaning generated xdocs</echo>
                                <delete quiet="true">
                                    <fileset dir="${src.xdocs.dir}/rules" includes="**/*.xml" />
                                    <fileset dir="${src.xdocs.dir}/" includes="mergedruleset.xml" />
                                </delete>
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!-- As Clover can be quite an hassle, know that you can skip 
                it by using the following option when running mvn: $ mvn clean -Dmaven.clover.skip=true 
                site -->
            <plugin>
                <groupId>com.atlassian.maven.plugins</groupId>
                <artifactId>maven-clover2-plugin</artifactId>
                <version>2.5.1</version>
                <configuration>
                    <jdk>1.6</jdk>
                    <licenseLocation>licences/clover2.license</licenseLocation>
                </configuration>
                <executions>
                    <execution>
                        <phase>pre-site</phase>
                        <goals>
                            <goal>instrument</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                    <xdocDirectory>${project.build.directory}/generated-xdocs</xdocDirectory>
                </configuration>
            </plugin>

            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.2.1</version>
                <configuration>
                    <appendAssemblyId>false</appendAssemblyId>
                    <archiverConfig>
                        <defaultDirectoryMode>493</defaultDirectoryMode> <!-- 0755 -->
                    </archiverConfig>
                </configuration>
                <executions>
                    <!-- needs to run after the site, as the site documentation 
                        will be included in the zip files -->
                    <execution>
                        <id>build-bin-dist</id>
                        <phase>post-site</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                        <configuration>
                            <finalName>${project.artifactId}-bin-${project.version}</finalName>
                            <descriptors>
                                <descriptor>src/main/assembly/bin.xml</descriptor>
                            </descriptors>
                        </configuration>
                    </execution>
                    <execution>
                        <id>build-src-dist</id>
                        <phase>post-site</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                        <configuration>
                            <finalName>${project.artifactId}-src-${project.version}</finalName>
                            <descriptors>
                                <descriptor>src/main/assembly/src.xml</descriptor>
                            </descriptors>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>net.sourceforge.pmd</groupId>
                <artifactId>pmd-build</artifactId>
                <version>0.8</version>
                <executions>
                    <execution>
                        <phase>pre-site</phase>
                        <goals>
                            <goal>pmd-pre-site</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <releaseProfiles>pmd-release</releaseProfiles>
                    <pushChanges>false</pushChanges>
                    <localCheckout>true</localCheckout>
                </configuration>
            </plugin>
        </plugins>
        <pluginManagement>
            <plugins>
                <!--This plugin's configuration is used to store Eclipse 
                    m2e settings only. It has no influence on the Maven build itself. -->
                <plugin>
                    <groupId>org.eclipse.m2e</groupId>
                    <artifactId>lifecycle-mapping</artifactId>
                    <version>1.0.0</version>
                    <configuration>
                        <lifecycleMappingMetadata>
                            <pluginExecutions>
                                <pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupId>org.apache.maven.plugins</groupId>
                                        <artifactId>maven-antrun-plugin</artifactId>
                                        <versionRange>[1.7,)</versionRange>
                                        <goals>
                                            <goal>run</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <execute>
                                            <runOnIncremental>false</runOnIncremental>
                                            <runOnConfiguration>true</runOnConfiguration>
                                        </execute>
                                    </action>
                                </pluginExecution>
                            </pluginExecutions>
                        </lifecycleMappingMetadata>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
    <dependencies>
        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.8.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant-testutil</artifactId>
            <version>1.7.1</version>
        </dependency>
        <dependency>
            <groupId>jaxen</groupId>
            <artifactId>jaxen</artifactId>
            <version>1.1.1</version>
            <exclusions>
                <exclusion>
                    <artifactId>xercesImpl</artifactId>
                    <groupId>xerces</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>xalan</artifactId>
                    <groupId>xalan</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>icu4j</artifactId>
                    <groupId>com.ibm.icu</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
          <groupId>com.beust</groupId>
          <artifactId>jcommander</artifactId>
          <version>1.27</version>
        </dependency>
        <dependency>
            <groupId>asm</groupId>
            <artifactId>asm</artifactId>
            <version>3.2</version>
        </dependency>
        <dependency>
            <groupId>net.sourceforge.saxon</groupId>
            <artifactId>saxon</artifactId>
            <version>9.1.0.8</version>
        </dependency>
        <dependency>
            <groupId>net.sourceforge.saxon</groupId>
            <artifactId>saxon</artifactId>
            <version>9.1.0.8</version>
            <classifier>dom</classifier>
        </dependency>
        <dependency>
            <groupId>org.mozilla</groupId>
            <artifactId>rhino</artifactId>
            <version>1.7R3</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.4</version>
        </dependency>
        <dependency>
            <groupId>xerces</groupId>
            <artifactId>xercesImpl</artifactId>
            <version>2.9.1</version>
            <type>jar</type>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>net.java.dev.javacc</groupId>
            <artifactId>javacc</artifactId>
            <version>${javacc.version}</version>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.2</version>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.9.5</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jxr-plugin</artifactId>
                <version>2.3</version>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.8.1</version>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>javadoc</report>
                            <report>test-javadoc</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-pmd-plugin</artifactId>
                <version>2.7.1</version>
                <configuration>
                    <linkXref>true</linkXref>
                    <sourceEncoding>utf-8</sourceEncoding>
                    <minimumTokens>100</minimumTokens>
                    <targetJdk>1.6</targetJdk>
                    <rulesets>
                        <!-- once the pmd plugin is migrated to pmd-5, we
                            should be able to use the current dogfood configuration -->
                        <!-- <ruleset>src/main/resources/rulesets/internal/dogfood.xml</ruleset> -->
                        <ruleset>https://pmd.svn.sourceforge.net/svnroot/pmd/branches/pmd/4.3.x/rulesets/internal/dogfood.xml</ruleset>
                    </rulesets>
                </configuration>
            </plugin>

            <!-- Emma is a test coverage tools to be used instead of clover. 
                As the mvn2 plugin is not released yet, the plugin is commented out, so you 
                build won't fail: You can get an Emma plugin for Maven2 at http://jira.codehaus.org/browse/MOJO-762 
                Download the tarball, extract, cd into dir, run $ mvn install. -->
            <!-- <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>emma-maven-plugin</artifactId> 
                </plugin> -->

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>2.9.1</version>
                <configuration>
                    <configLocation>etc/checkstyle-config.xml</configLocation>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-project-info-reports-plugin</artifactId>
                <version>2.4</version>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>summary</report>
                            <report>dependencies</report>
                            <report>project-team</report>
                            <report>mailing-list</report>
                            <report>cim</report>
                            <report>issue-tracking</report>
                            <report>license</report>
                            <report>scm</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-report-plugin</artifactId>
                <version>2.12</version>
            </plugin>
            <plugin>
                <groupId>com.atlassian.maven.plugins</groupId>
                <artifactId>maven-clover2-plugin</artifactId>
                <version>2.5.1</version>
                <configuration>
                    <licenseLocation>licences/clover2.license</licenseLocation>
                    <reportDescriptor>etc/default-clover-report.xml</reportDescriptor>
                </configuration>
            </plugin>
        </plugins>
    </reporting>

    <profiles>
        <profile>
            <id>pmd-release</id>
            <properties>
                <pmd.website.baseurl>http://pmd.sourceforge.net/pmd-${project.version}</pmd.website.baseurl>
            </properties>
        </profile>
        <profile>
            <id>sf-release</id>
            <distributionManagement>
                <repository>
                    <id>pmd-repo</id>
                    <name>Default Repository</name>
                    <url>scp://shell.sourceforge.net/home/project-web/pmd/htdocs/maven2</url>
                </repository>
                <site>
                    <id>pmd-site</id>
                    <name>Default Site</name>
                    <url>scp://shell.sourceforge.net/home/project-web/pmd/htdocs/pmd-${project.version}</url>
                </site>
            </distributionManagement>
            <properties>
                <pmd.website.baseurl>http://pmd.sourceforge.net/pmd-${project.version}</pmd.website.baseurl>
            </properties>
            <build>
                <plugins>
                    <plugin>
                        <inherited>true</inherited>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <inherited>true</inherited>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-javadocs</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <inherited>true</inherited>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-deploy-plugin</artifactId>
                        <configuration>
                            <updateReleaseInfo>true</updateReleaseInfo>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>sf-snapshot</id>
            <distributionManagement>
                <snapshotRepository>
                    <id>pmd-snapshot-repo</id>
                    <name>Snapshot Repository</name>
                    <url>scp://shell.sourceforge.net/home/project-web/pmd/htdocs/snapshot/maven2</url>
                    <uniqueVersion>true</uniqueVersion>
                </snapshotRepository>
                <site>
                    <id>pmd-snapshot-site</id>
                    <name>Default Site</name>
                    <url>scp://shell.sourceforge.net/home/project-web/pmd/htdocs/snapshot</url>
                </site>
            </distributionManagement>
        </profile>

        <profile>
            <id>reports</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-pmd-plugin</artifactId>
                        <version>2.7.1</version>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>pmd</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <sourceEncoding>utf-8</sourceEncoding>
                            <minimumTokens>100</minimumTokens>
                            <targetJdk>1.6</targetJdk>
                            <rulesets>
                                <!-- once the pmd plugin is migrated to pmd-5, 
                                    we should be able to use the current dogfood configuration -->
                                <!-- <ruleset>src/main/resources/rulesets/internal/dogfood.xml</ruleset> -->
                                <ruleset>https://pmd.svn.sourceforge.net/svnroot/pmd/branches/pmd/4.3.x/rulesets/internal/dogfood.xml</ruleset>
                            </rulesets>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-checkstyle-plugin</artifactId>
                        <version>2.9.1</version>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>checkstyle</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <configLocation>etc/checkstyle-config.xml</configLocation>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>