for the actual implementation, I think it would be a good idea to
create a second lib-directory (e.g. buildsupport, or buildlib), and
add the required libs there, so that we're all using the same tools.
These libs would only be needed during build, and not during deployment.
Libs which are BSD (pmd, retroweaver /translator) would be added there
directly, for others (checkstyle, findbugs) I'd provide a readme on
where to find them.
Right now this is the case with lib/, but everything in lib/ is also
used during run-time, whereas I would explicity like to exclude these
This would increase the size of the fop svn directory, but it would
also make it easier for developers to get started.
On that note, I'm currently evaluating IntelliJ, which has some
really nice Code Inspection features. It warns about redundant
statements, for example: unnecessary casts, variable that are
assigned but never used, while-statements that don't loop...
nice. This could definitely be complimentary.
As you said, the result could turn out to be scary... :-)
It will be.