The one Ant script to rule them all
Introduction
To analysis each project separately PMD and QJ Pro are run from within an ANT build file. This allows for control via a specific property file. Basically a Perl script generates a bash script that runs a build per project. The Perl script also generates the related property files. The advantage of this approach is that the analysis auto adapts as new projects are added or removed from the trunk.
Details
To avoid memory issues the build file was called a number of times. A typical property file looks similar to:
Note: I had faulty work station memory chips at the time I was writing the code.
label=part1
src=src/trunk
projects=access,alias,announcement,archive,assignment,authz,blog
qjpro_home=lib /qjpro_V2.2.0
out= /website/www
archive=archive
qjconf=conf/l5_l4.cfg
cpd.min_token=100
Label |
Comment echoed by build |
Src |
location of source code |
Projects |
projects to be tested |
Out |
location data is stored |
Archive |
location information is archived to |
Qjconf |
location of the QJ Pro ruleset |
Cpd.min |
Number of repeated tokens before duplicated code is reported |