svn commit: r13655 - trunk/src_new
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: tfmorris
Date: 2007-10-10 14:05:55-0700
New Revision: 13655
Modified:
trunk/src_new/build.xml
trunk/src_new/default.properties
Log:
Add PMD syntax checker & CPD clone detector to build
Modified: trunk/src_new/build.xml
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/build.xml?view=diff&rev=13655&p1=trunk/src_new/build.xml&p2=trunk/src_new/build.xml&r1=13654&r2=13655
==============================================================================
--- trunk/src_new/build.xml (original)
+++ trunk/src_new/build.xml 2007-10-10 14:05:55-0700
@@ -1147,6 +1147,54 @@
</target>
+ <target name="pmd-init" depends="ant.optional.init">
+ <taskdef name="pmd" classname="net.sourceforge.pmd.ant.PMDTask" classpath="${pmd.jar.path}"/>
+ <taskdef name="cpd" classname="net.sourceforge.pmd.cpd.CPDTask" classpath="${pmd.jar.path}"/>
+ <property name="pmd.reports.dir" value="${argo.tests.reports}/pmd"/>
+ <mkdir dir="${pmd.reports.dir}"/>
+ </target>
+
+ <target name="pmd" depends="pmd-init">
+
+ <delete>
+ <fileset dir="${pmd.reports.dir}">
+ <include name="*.xml, *.htm*"/>
+ </fileset>
+ </delete>
+
+ <pmd shortFilenames="true">
+ <ruleset>rulesets/favorites.xml</ruleset>
+ <ruleset>basic</ruleset>
+ <formatter type="html" toFile="${pmd.reports.dir}/pmd-report.html"
+ linkPrefix="http://pmd.sourceforge.net/xref/"/>
+ <fileset dir="${argo.src.dir}/org" includes="**/*.java">
+ <exclude name="**/JavaLexer.java"/>
+ <exclude name="**/JavaRecognizer.java"/>
+ <exclude name="**/JavaTokenTypes.java"/>
+ </fileset>
+ </pmd>
+ </target>
+
+ <target name="cpd" depends="pmd-init">
+ <property name="cpd.report.file" value="${pmd.reports.dir}/cpd-report"/>
+
+ <mkdir dir="${pmd.reports.dir}"/>
+ <delete file="${cpd.report.file}.*"/>
+ <cpd minimumTokenCount="100" outputFile="${cpd.report.file}.xml"
+ format="xml" encoding="UTF-8">
+ <fileset dir="${argo.src.dir}">
+ <include name="**/*.java"/>
+ <exclude name="**/JavaLexer.java"/>
+ <exclude name="**/JavaRecognizer.java"/>
+ <exclude name="**/JavaTokenTypes.java"/>
+ </fileset>
+ </cpd>
+
+ <xslt in="${cpd.report.file}.xml" style="${pmd.xslt.path}/cpdhtml.xslt"
+ out="${cpd.report.file}.html"/>
+
+ </target>
+
<!-- Internal target to aggregate tasks for CruiseControl -->
<target name="cruisecontrol" depends="tests,checkstyle" />
Modified: trunk/src_new/default.properties
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src_new/default.properties?view=diff&rev=13655&p1=trunk/src_new/default.properties&p2=trunk/src_new/default.properties&r1=13654&r2=13655
==============================================================================
--- trunk/src_new/default.properties (original)
+++ trunk/src_new/default.properties 2007-10-10 14:05:55-0700
@@ -121,4 +121,6 @@
junit.jar.path=${argo.tools.dir}/junit-3.8.2/junit.jar
#junit.jar.path=${argo.tools.dir}/junit-4.2/junit.jar
easymock.jar.path=${argo.tools.dir}/lib/easymock12.jar
-
+pmd.dir=${argo.tools.dir}/pmd-4.0
+pmd.jar.path=${pmd.dir}/lib/pmd-4.0.jar
+pmd.xslt.path=${pmd.dir}/etc/xslt