blob: 3346f892abdd53e924427595af7c5e1da60f7944 [file] [log] [blame]
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Chapter&nbsp;9.&nbsp;Analysis Properties</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="FindBugs&#8482; Manual"><link rel="up" href="index.html" title="FindBugs&#8482; Manual"><link rel="prev" href="filter.html" title="Chapter&nbsp;8.&nbsp;Filter Files"><link rel="next" href="annotations.html" title="Chapter&nbsp;10.&nbsp;Annotations"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;9.&nbsp;Analysis Properties</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="filter.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="annotations.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="analysisprops"></a>Chapter&nbsp;9.&nbsp;Analysis Properties</h1></div></div></div><p>
<span class="application">FindBugs</span> allows several aspects of the analyses it performs to be
customized. System properties are used to configure these options.
This chapter describes the configurable analysis options.
</p><p>
The analysis options have two main purposes. First, they allow you
to inform <span class="application">FindBugs</span> about the meaning of methods in your application,
so that it can produce more accurate results, or produce fewer
false warnings. Second, they allow you to configure the precision
of the analysis performed. Reducing analysis precision can save
memory and analysis time, at the expense of missing some real bugs,
or producing more false warnings.
</p><p>
The analysis options are set using the <span class="command"><strong>-property</strong></span>
command line option. For example:
</p><pre class="screen">
<code class="prompt">$ </code><span class="command"><strong>findbugs -textui -property "cfg.noprune=true" <em class="replaceable"><code>myApp.jar</code></em></strong></span>
</pre><p>
</p><p>
The list of configurable analysis properties is shown in
<a class="xref" href="analysisprops.html#analysisproptable" title="Table&nbsp;9.1.&nbsp;Configurable Analysis Properties">Table&nbsp;9.1, &#8220;Configurable Analysis Properties&#8221;</a>.
</p><div class="table"><a name="analysisproptable"></a><p class="title"><b>Table&nbsp;9.1.&nbsp;Configurable Analysis Properties</b></p><div class="table-contents"><table summary="Configurable Analysis Properties" border="1"><colgroup><col><col><col></colgroup><thead><tr><th align="left">Property Name</th><th align="left">Value</th><th align="left">Meaning</th></tr></thead><tbody><tr><td align="left">findbugs.assertionmethods</td><td align="left">Comma-separated list of fully qualified method names:
e.g., "com.foo.MyClass.checkAssertion"</td><td align="left">This property specifies the names of methods that are used
to check program assertions. Specifying these methods allows
the null pointer dereference bug detector to avoid reporting
false warnings for values which are checked by assertion
methods.</td></tr><tr><td align="left">findbugs.de.comment</td><td align="left">true or false</td><td align="left">If true, the DroppedException detector scans source code
for empty catch blocks for a comment, and if one is found, does
not report a warning.</td></tr><tr><td align="left">findbugs.maskedfields.locals</td><td align="left">true or false</td><td align="left">If true, emit low priority warnings for local variables
which obscure fields. Default is false.</td></tr><tr><td align="left">findbugs.nullderef.assumensp</td><td align="left">true or false</td><td align="left">not used
(intention: If true, the null dereference detector assumes that any
reference value returned from a method or passed to a method
in a parameter might be null. Default is false. Note that
enabling this property will very likely cause a large number
of false warnings to be produced.)</td></tr><tr><td align="left">findbugs.refcomp.reportAll</td><td align="left">true or false</td><td align="left">If true, all suspicious reference comparisons
using the == and != operators are reported.&nbsp; If false,
only one such warning is issued per method.&nbsp; Default
is false.</td></tr><tr><td align="left">findbugs.sf.comment</td><td align="left">true or false</td><td align="left">If true, the SwitchFallthrough detector will only report
warnings for cases where the source code does not have a comment
containing the words "fall" or "nobreak". (An accurate source
path must be used for this feature to work correctly.)
This helps find cases where the switch fallthrough is likely
to be unintentional.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="filter.html">Prev</a>&nbsp;</td><td width="20%" align="center">&nbsp;</td><td width="40%" align="right">&nbsp;<a accesskey="n" href="annotations.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter&nbsp;8.&nbsp;Filter Files&nbsp;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&nbsp;Chapter&nbsp;10.&nbsp;Annotations</td></tr></table></div></body></html>