checkstyle/docs/index.html

195 lines
7.9 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<title>Checkstyle Home Page</title>
<link rel="stylesheet" type="text/css" href="mystyle.css">
</head>
<body>
<!-- The header -->
<table border="0" width="100%" summary="header layout">
<tr>
<td>
<h1>Checkstyle Home Page</h1>
</td>
<td align="right">
<img src="logo.png" alt="Checkstyle Logo">
</td>
</tr>
</table>
<!-- content -->
<table border="0" width="100%" cellpadding="5" summary="body layout">
<tr>
<!--Left menu-->
<td valign="top" align="left" nowrap="true" bgcolor="#EEEEEE">
<p>Checkstyle</p>
<ul>
<li><a href="#overview">Overview</a></li>
<li><a href="#features">Features</a></li>
<li><a href="#download">Download</a></li>
<li><a href="#upgrading">Upgrading</a></li>
<li><a href="java.header">License</a></li>
<li><a href="#related">Related Tools</a></li>
</ul>
<p>Documentation</p>
<ul>
<li><a href="releasenotes.html">Release Notes</a></li>
<li><a href="config.html">Configuration</a></li>
<li><a href="anttask.html">ANT Task</a></li>
<li><a href="cmdline.html">Command Line</a></li>
<li><a href="writingchecks.html">Writing Checks</a></li>
</ul>
<p>SourceForge</p>
<ul>
<li><a href="http://sourceforge.net/mail/?group_id=29721">Mailing Lists</a></li>
<li><a href="http://sourceforge.net/tracker/?atid=397078&group_id=29721&func=browse">Bug Database</a></li>
<li><a href="http://sourceforge.net/tracker/?atid=397081&group_id=29721&func=browse">Feature Requests</a></li>
</ul>
<p>Developers</p>
<ul>
<li><a href="http://sourceforge.net/projects/checkstyle">Project Page</a></li>
<li><a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/checkstyle/">CVS Repository</a></li>
<li><a href="api/index.html">JavaDoc</a></li>
</ul>
<p>Hosted by: <A href="http://sourceforge.net">
<IMG src="http://sourceforge.net/sflogo.php?group_id=29721&type=1" width="88" height="31" border="0" alt="SourceForge Logo"></A>
</p>
</td>
<!--Content-->
<td width="100%" valign="top" align="left">
<a name="overview"></a>
<h2>Overview</h2>
<p class="body">
Checkstyle is a development tool to help programmers write Java code
that adheres to a coding standard. It automates the process
of checking Java code to spare humans of this boring (but important)
task. This makes it ideal for projects that want to enforce a coding
standard.
</p>
<p class="body">
By default it supports the <a href="http://java.sun.com/docs/codeconv/">
Sun Code Conventions</a>. However, Checkstyle is highly configurable.
</p>
<p class="body">
A good example of a report that can be produced using Checkstyle and
<a href="http://jakarta.apache.org/turbine/maven">Maven</a> can be
<a href="http://jakarta.apache.org/turbine/maven/checkstyle-report.html">seen here</a>.
</p>
<a name="features"></a>
<h2>Features</h2>
<p class="body">The things that Checkstyle can check for are:</p>
<ul>
<li class="body"><a href="config_javadoc.html">Javadoc Comments</a></li>
<li class="body"><a href="config_naming.html">Naming Conventions</a></li>
<li class="body"><a href="config_header.html">Headers</a></li>
<li class="body"><a href="config_import.html">Imports</a></li>
<li class="body"><a href="config_sizes.html">Size Violations</a></li>
<li class="body"><a href="config_whitespace.html">Whitespace</a></li>
<li class="body"><a href="config_modifiers.html">Modifiers</a></li>
<li class="body"><a href="config_blocks.html">Blocks</a></li>
<li class="body"><a href="config_misc.html">Miscellaneous Checks</a></li>
</ul>
<a name="download"></a>
<h2>Download</h2>
<p class="body">
The latest release of Checkstyle can be downloaded from <a href="http://sourceforge.net/project/showfiles.php?group_id=29721">the SourceForge download page</a>.
</p>
<p class="body">
If you want to live on the bleeding edge, you can <a href="http://sourceforge.net/cvs/?group_id=29721">checkout the current development code from CVS</a> and compile yourself.
</p>
<a name="upgrading"></a>
<h2>Upgrading to release 2.4</h2>
<p class="body">As of release 2.4 Checkstyle can only be configured by
properties. The major impact is to the ANT task as many arguments have
been removed. It is still possible to customise Checkstyle via ANT task,
but the technique has changed. For example the following call with
Checkstyle 2.3: </p>
<pre>
&lt;checkstyle cacheFile="target/checkstyle.cache"
headerFile="dev/header.txt"
properties="dev/checkstyle.config"&gt;
&lt;fileset dir="src" includes="**/*.java"/&gt;
&lt;/checkstyle&gt;
</pre>
<p class="body">has the equivalent call with Checkstyle 2.4:</p>
<pre>
&lt;checkstyle properties="dev/checkstyle.config"&gt;
&lt;fileset dir="src" includes="**/*.java"/&gt;
&lt;property key="checkstyle.cache.file"
file="target/checkstyle.cache"/&gt;
&lt;property key="checkstyle.header.file"
file="dev/header.txt"/&gt;
&lt;/checkstyle&gt;
</pre>
<p class="body">See the documentation for the <a href="anttask.html">ANT
Task</a> for more examples.</p>
<a name="related"></a>
<h2>Related Tools</h2>
<p class="body">
Checkstyle is most useful if you integrate it in your build process or your development environment. The distribution includes:
</p>
<ul>
<li class="body">An <a href="http://jakarta.apache.org/ant/index.html">Ant</a> task.</li>
<li class="body">A command line tool.</li>
</ul>
<p class="body">
Additionally:
</p>
<ul>
<li class="body">The <a href="http://jakarta.apache.org/turbine/maven">Maven</a> project management system provides support for Checkstyle. Configuration documentation is available from <a href="http://jakarta.apache.org/turbine/maven/ref/properties.html#Checkstyle Settings">here</a> and an example report <a href="http://jakarta.apache.org/turbine/maven/checkstyle-report.html">here</a>.</li>
<li class="body">Todd Papaioannou has written <a href="http://plugins.jedit.org/plugins/CheckStylePlugin">CheckStylePlugin</a> to integrate Checkstyle with the very cool <a href="http://www.jedit.org/">jEdit</a> editor.</li>
<li class="body">Paul Goulbourn has written <a href="http://nbcheckstyle.sourceforge.net">nbCheckStyle</a>, a module to integrate Checkstyle with <a href="http://www.netbeans.org">NetBeans</a>.</li>
<li class="body">The <a href="http://www.krysalis.org/centipede/">Krysalis Centipede</a> build system provides a plug-in for Checkstyle. Documentation is available from <a href="http://www.krysalis.org/centipede/centipede/">http://www.krysalis.org/centipede/centipede/</a>.</li>
<li class="body">Angus Chan has written <a href="http://jbcheckstyle.sourceforge.net">jbCheckStyle</a>, an Open Tool for JBuilder.</li>
<li class="body">David Schneider has written a plug-in to integrate Checkstyle with <a href="http://www.eclipse.org">Eclipse/WSAD</a>. It is available from <a href="http://www.telesynthesis.com">http://www.telesynthesis.com</a>.</li>
<li class="body">Markus Mohnen has written a nice interface to Checkstyle for the <a href="http://jde.sunsite.dk">Emacs JDE</a>. It is now part of the standard JDE distribution.</li>
</ul>
<p class="body">
If you have written a plugin for other IDEs, like <a href="http://www.webgain.com">VisualCaf&eacute;</a>, please <a href="mailto:checkstyle@puppycrawl.com">let us know</a>, so we can provide a link here.
</p>
</td>
</tr>
</table>
<hr>
<p align="center">Copyright &copy; 2001 Oliver Burn. All rights Reserved.</p>
</body> </html>