As one can expect, I have quite a bit of experience with using Checkstyle. I have been using it on my current project since the beginning, and as such have had the ability to impose a “zero tolerance” policy on errors. After the usual initial mumblings, it is now taken for granted. I guess you could say that we reached a truce.

To get to this state is pretty good considering that the project has:

  • About forty active developers.

  • Over 5,600 Java files and growing rapidly. This number excludes all test code (unit and integration tests).

    </UL>

    Given the size of the project, we make extensive use of Subversion branching. To help reduce the number of potential conflicts, it is necessary to minimise the number of changes due to personal style, or the whim of the IDE. The following checks have been very helpful:

    • Indentation to ensure that code is consistently indented.

    • ImportOrder to ensure the import order is fixed. You be amazed at what the IDE's do.

    • GenericIllegalRegexp to ensure no trailing white space characters. Not sure how much this guy would like it!

      </UL>