OLD | NEW |
1 <html><head> | 1 <html><head> |
2 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | 2 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> |
3 <title>第9章 分析プロパテ
451;ー</title><meta name="generator" content="DocBook XSL Stylesheets V1.7
6.1"><link rel="home" href="index.html" title="FindBugs™ マニ&
#12517;アル"><link rel="up" href="index.html" title="FindBugs™
マニュアル"><link rel="prev" href="filter.html" t
itle="第8章 フィルターファ
イル"><link rel="next" href="annotations.html" title="第10
456; アノテーション"></head><body bgco
lor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div cla
ss="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="
3" align="center">第9章 分析プロパ
486;ィー</th></tr><tr><td width="20%" align="left"><a accesskey="p"
href="filter.html">戻る</a> </td><th width="60%" align="center"
> </th><td width="20%" align="right"> <a accesskey="n" href="annotatio
ns.html">次へ</a></td></tr></table><hr></div><div class="chapter" ti
tle="第9章 分析プロパティ&
#12540;"><div class="titlepage"><div><div><h2 class="title"><a name="analysispro
ps"></a>第9章 分析プロパテӝ
1;ー</h2></div></div></div><p><span class="application">FindBugs</span> &#
12399;分析する場合にいく&#
12388;かの観点を持ってい&#
12414;す。そして、観点を&#
12459;スタマイズして実行&#
12377;ることができます。&#
12471;ステムプロパティー&#
12434;使って、それらのオ&#
12503;ションを設定します&#
12290;この章では、分析オ&#
12503;ションの設定方法を&#
35500;明します。</p><p>分析オ
2503;ションの主な目的は
2289; 2 つあります。1 番目ӗ
9;、 <span class="application">FindBugs</span> に対し
2390;分析されるアプリケ
2540;ションのメソッドの
4847;味を伝えることです
2290;そうすることで <span class="appli
cation">FindBugs</span> がより正確な結
果を出すことができ、
誤検出を減らすことが
できます。2 番目に、࠳
8;析を行うに当たりそӗ
8;精度を設定できるよӓ
8;にすることです。分ਜ਼
2;の精度を落とすことӗ
1;、メモリ使用量と分ਜ਼
2;時間を減らすことがӗ
1;きます。ただし、本ঈ
3;のバグを見逃したりӌ
9;誤検出の数が増えるӗ
2;いう代償がありますӍ
0;</p><p>コマンドラインオプ
;ション <span class="command"><strong>-property</strong></span
> を使って、分析オプӟ
1;ョンを設定することӔ
4;できます。次に、例ӛ
4;示します:</p><pre class="screen"> | 3 <title>第9章 分析プロパテ
451;ー</title><meta name="generator" content="DocBook XSL Stylesheets V1.7
8.1"><link rel="home" href="index.html" title="FindBugs™ マニ&
#12517;アル"><link rel="up" href="index.html" title="FindBugs™
マニュアル"><link rel="prev" href="filter.html" t
itle="第8章 フィルターファ
イル"><link rel="next" href="annotations.html" title="第10
456; アノテーション"></head><body bgco
lor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div cla
ss="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="
3" align="center">第9章 分析プロパ
486;ィー</th></tr><tr><td width="20%" align="left"><a accesskey="p"
href="filter.html">戻る</a> </td><th width="60%" align="center"
> </th><td width="20%" align="right"> <a accesskey="n" href="annotatio
ns.html">次へ</a></td></tr></table><hr></div><div class="chapter"><d
iv class="titlepage"><div><div><h1 class="title"><a name="analysisprops"></a>
1532;9章 分析プロパティー<
/h1></div></div></div><p><span class="application">FindBugs</span> はÑ
98;析する場合にいくつ{
63;の観点を持っていま{
77;。そして、観点をカ|
73;タマイズして実行す|
27;ことができます。シ|
73;テムプロパティーをË
51;って、それらのオプ|
71;ョンを設定します。{
71;の章では、分析オプ|
71;ョンの設定方法を説ą
26;します。</p><p>分析オプӟ
1;ョンの主な目的は、 2 
2388;あります。1 番目は、
<span class="application">FindBugs</span> に対して࠳
8;析されるアプリケーӟ
1;ョンのメソッドの意ࡱ
9;を伝えることです。Ӗ
1;うすることで <span class="application">Fin
dBugs</span> がより正確な結果
2434;出すことができ、誤
6908;出を減らすことがで
2365;ます。2 番目に、分析&
#12434;行うに当たりその精&
#24230;を設定できるように&
#12377;ることです。分析の&
#31934;度を落とすことで、&
#12513;モリ使用量と分析時&
#38291;を減らすことができ&
#12414;す。ただし、本当の&
#12496;グを見逃したり、誤&
#26908;出の数が増えるとい&
#12358;代償があります。</p><p>&#
12467;マンドラインオプシ&#
12519;ン <span class="command"><strong>-property</strong></span> を&
#20351;って、分析オプショ&
#12531;を設定することがで&
#12365;ます。次に、例を示&
#12375;ます:</p><pre class="screen"> |
4 <code class="prompt">$ </code><span class="command"><strong>findbugs -textui -pr
operty "cfg.noprune=true" <em class="replaceable"><code>myApp.jar</code></em></s
trong></span> | 4 <code class="prompt">$ </code><span class="command"><strong>findbugs -textui -pr
operty "cfg.noprune=true" <em class="replaceable"><code>myApp.jar</code></em></s
trong></span> |
5 </pre><p> | 5 </pre><p> |
6 </p><p>設定することができ&
#12427;分析オプションの一&
#35239;を <a class="xref" href="analysisprops.html#analysisproptable" titl
e="表9.1 設定可能な分析プ&
#12525;パティー">表9.1「設定
487;能な分析プロパティ
540;」</a> に示します。</p><div class=
"table"><a name="analysisproptable"></a><p class="title"><b>表9.1 設
定可能な分析プロパテ
ィー</b></p><div class="table-contents"><table summary="設
450;可能な分析プロパテ
451;ー" border="1"><colgroup><col><col><col></colgroup><thead><tr><th alig
n="left">プロパティー名</th><th align=
"left">設定値</th><th align="left">目的</th></tr><
/thead><tbody><tr><td align="left">findbugs.assertionmethods</td><td align="left
">コンマ区切りの完全߾
2;飾メソッド名リスト : 
0363;、 "com.foo.MyClass.checkAssertion"</td><td align="left">こ
398;プロパティーには、
503;ログラムが正しいこ
392;をチェックするため
395;使われるメソッドを
351;定します。これらの
513;ソッドを指定するこ
392;で、 チェックメソッ
2489;で確認した値に対す
2427; null 参照アクセスディ|
86;クタの誤検出を回避{
91;きます。</td></tr><tr><td align="left">findbugs.de.co
mment</td><td align="left">true または false</td><td align="le
ft">true に設定すると、 DroppedExcepti
on (無視された例外) ディ&#
12486;クタは空の catch ブロッ
2463; にコメントが無いか&#
25506;します。そして、コ&#
12513;ントがみつかった場&#
21512;には警告が報告され&#
12414;せん。</td></tr><tr><td align="left">findbugs.maskedfiel
ds.locals</td><td align="left">true または false</td><td align
="left">true に設定すると、フ
2451;ールドを隠蔽してい
2427;ローカル変数に対し
2390;優先度(低)の警告が発&
#34892;されます。デフォル&
#12488;は、 false です。</td></tr><tr><td align="l
eft">findbugs.nullderef.assumensp</td><td align="left">true また
399; false</td><td align="left">使用されませ
ん。 (意図 : true に設定すӚ
7;と、null 参照アクセスデ&
#12451;テクタはメソッドか&
#12425;の戻り値、または、&
#12513;ソッドに受け渡され&
#12427;引数を null であると仮
3450;します。デフォルト
2399;、 false です。このプロ
497;ティーを有効にする
392;、大量の誤検出が生
104;されるであろうこと
395;注意してください。)</t
d></tr><tr><td align="left">findbugs.refcomp.reportAll</td><td align="left">true
または false</td><td align="left">true に設ऩ
0;すると、 == および != 演ļ
39;子を使っている疑わ{
75;い参照比較がすべてá
77;告されます。 false に設ऩ
0;すると、同様の警告ӗ
9; 1 メソッドにつき 1 つし
か発行されません。デ
フォルトは、 false です。<
/td></tr><tr><td align="left">findbugs.sf.comment</td><td align="left">true 
414;たは false</td><td align="left">true に設定
2377;ると、 SwitchFallthrough ディテク
タはソースコードに「
fall」または「nobreak」とい{
58;単語を含んだコメン|
88;を記載していない caseラ
ベル に限り警告を報告
;します。(この機能がઽ
1;しく動作するためにӗ
9;、正確なソースパスӔ
4;必要です。) これによ
426;、意図的ではない switch 
991;の fallthrough を発見し易くな
;ります。</td></tr></tbody></table></div></div><br class
="table-break"></div><div class="navfooter"><hr><table width="100%" summary="Nav
igation footer"><tr><td width="40%" align="left"><a accesskey="p" href="filter.h
tml">戻る</a> </td><td width="20%" align="center"> </td><t
d width="40%" align="right"> <a accesskey="n" href="annotations.html">Ē
25;へ</a></td></tr><tr><td width="40%" align="left" valign="top">第8
章 フィルターファイル
; </td><td width="20%" align="center"><a accesskey="h" href="index.html">&#
12507;ーム</a></td><td width="40%" align="right" valign="top">
第10章 アノテーション</td>
</tr></table></div></body></html> | 6 </p><p>設定することができ&
#12427;分析オプションの一&
#35239;を <a class="xref" href="analysisprops.html#analysisproptable" titl
e="表9.1 設定可能な分析プ&
#12525;パティー">表9.1「設定
487;能な分析プロパティ
540;」</a> に示します。</p><div class=
"table"><a name="analysisproptable"></a><p class="title"><b>表9.1 設
定可能な分析プロパテ
ィー</b></p><div class="table-contents"><table summary="設
450;可能な分析プロパテ
451;ー" border="1"><colgroup><col><col><col></colgroup><thead><tr><th alig
n="left">プロパティー名</th><th align=
"left">設定値</th><th align="left">目的</th></tr><
/thead><tbody><tr><td align="left">findbugs.assertionmethods</td><td align="left
">コンマ区切りの完全߾
2;飾メソッド名リスト : 
0363;、 "com.foo.MyClass.checkAssertion"</td><td align="left">こ
398;プロパティーには、
503;ログラムが正しいこ
392;をチェックするため
395;使われるメソッドを
351;定します。これらの
513;ソッドを指定するこ
392;で、 チェックメソッ
2489;で確認した値に対す
2427; null 参照アクセスディ|
86;クタの誤検出を回避{
91;きます。</td></tr><tr><td align="left">findbugs.de.co
mment</td><td align="left">true または false</td><td align="le
ft">true に設定すると、 DroppedExcepti
on (無視された例外) ディ&#
12486;クタは空の catch ブロッ
2463; にコメントが無いか&#
25506;します。そして、コ&#
12513;ントがみつかった場&#
21512;には警告が報告され&#
12414;せん。</td></tr><tr><td align="left">findbugs.maskedfiel
ds.locals</td><td align="left">true または false</td><td align
="left">true に設定すると、フ
2451;ールドを隠蔽してい
2427;ローカル変数に対し
2390;優先度(低)の警告が発&
#34892;されます。デフォル&
#12488;は、 false です。</td></tr><tr><td align="l
eft">findbugs.nullderef.assumensp</td><td align="left">true また
399; false</td><td align="left">使用されませ
ん。 (意図 : true に設定すӚ
7;と、null 参照アクセスデ&
#12451;テクタはメソッドか&
#12425;の戻り値、または、&
#12513;ソッドに受け渡され&
#12427;引数を null であると仮
3450;します。デフォルト
2399;、 false です。このプロ
497;ティーを有効にする
392;、大量の誤検出が生
104;されるであろうこと
395;注意してください。)</t
d></tr><tr><td align="left">findbugs.refcomp.reportAll</td><td align="left">true
または false</td><td align="left">true に設ऩ
0;すると、 == および != 演ļ
39;子を使っている疑わ{
75;い参照比較がすべてá
77;告されます。 false に設ऩ
0;すると、同様の警告ӗ
9; 1 メソッドにつき 1 つし
か発行されません。デ
フォルトは、 false です。<
/td></tr><tr><td align="left">findbugs.sf.comment</td><td align="left">true 
414;たは false</td><td align="left">true に設定
2377;ると、 SwitchFallthrough ディテク
タはソースコードに「
fall」または「nobreak」とい{
58;単語を含んだコメン|
88;を記載していない caseラ
ベル に限り警告を報告
;します。(この機能がઽ
1;しく動作するためにӗ
9;、正確なソースパスӔ
4;必要です。) これによ
426;、意図的ではない switch 
991;の fallthrough を発見し易くな
;ります。</td></tr></tbody></table></div></div><br class
="table-break"></div><div class="navfooter"><hr><table width="100%" summary="Nav
igation footer"><tr><td width="40%" align="left"><a accesskey="p" href="filter.h
tml">戻る</a> </td><td width="20%" align="center"> </td><t
d width="40%" align="right"> <a accesskey="n" href="annotations.html">Ē
25;へ</a></td></tr><tr><td width="40%" align="left" valign="top">第8
章 フィルターファイル
; </td><td width="20%" align="center"><a accesskey="h" href="index.html">&#
12507;ーム</a></td><td width="40%" align="right" valign="top">
第10章 アノテーション</td>
</tr></table></div></body></html> |
OLD | NEW |