Checkstyle results can be incorporated in the TICS output for
Checkstyle is a development tool to help programmers
write Java code that adheres to a coding standard. By default it supports the
Sun Code Conventions, but is highly configurable. Information on
Checkstyle can be found at the Checkstyle website.
The integration of
checkstyle with TICS is based on
checkstyle version 5.0. This version is downloadable via the TICS
download site. It is not recommended to use another version than this
checkstyleintegration, the following prerequisites must be met:
checkstylemust be installed on the TICS file server in chk/checkstyle.
checkstylehas to be configured correctly, see below.
Checkstyle can detect many different rules. All these rules are
listed in the
checkstyle installation in the following file:
checkstyle/docs/availablechecks.html. One can choose any set of
rules that should be reported by TICS. As with other codecheckers, this is done
by editing the
RULES.txt and the
cfg/codingstandards directory on the TICS FileServer.
The rule's identifier, severity level, category and synopsis can be modified in
checkstyle rules invoked by TICS
are configured in the
IMPL.txt. In this file, the check
checkstyle rules should be used as impl ID.
These check names are the strings in the first column in the
checkstyle rules have a parent-child relation. This
information should also be provided to TICS. This is done by specifying the
parent name in front of the check name. The two are separated by
_". The parent-child relation can be found in the Parent
Module section of the check's explanation. If the parent of a check
name is "
Checker", which is the root of all checks, then this
parent relation does not need to be specified. A short example of the IMPL.txt
file is given further down below.
IMPL.txtfile. An impl ID and its parameters are separated by an "
=". All rule parameters are in the form of property-value pairs and should be specified as property
:value. All property-value pairs are separated by a "
,". File locations are resolved relative to the directory containing the
An example of an IMPL.txt file is given below:
CS#001 checkstyle FileTabCharacter CS#002 checkstyle TreeWalker_AnnotationUseStyle CS#003 checkstyle RegexpHeader=headerFile:$(CFGPATH)/checkstyle/regexpheader.txt CS#004 checkstyle TreeWalker_MissingDeprecated CS#005 checkstyle TreeWalker_MissingOverride CS#006 checkstyle FileLength CS#007 checkstyle RegexpSingleline=format:debug,minimum:0,maximum:1
checkstyle rule configuration is available in the
form of a
checkstyle website for a list of all checkstyle rules.