問題タブ [findbugs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
33486 参照

java - 浮動小数点が等しいかどうかをテストします。(FE_FLOATING_POINT_EQUALITY)

ANT スクリプトで findbugs を使用していますが、2 つのエラーを修正する方法がわかりません。ドキュメントを読みましたが、理解できません。ここに私のエラーとそれに伴うコードがあります:

エラー 1: 浮動小数点が等しいかどうかをテストします。(FE_FLOATING_POINT_EQUALITY)

エラー 2: EQ_COMPARETO_USE_OBJECT_EQUALS

ComparesTo の問題に関するドキュメントを読みました。

(x.compareTo(y)==0) == (x.equals(y)) にすることを強くお勧めしますが、厳密には必須ではありません。一般的に言えば、 Comparable インターフェースを実装し、この条件に違反するクラスは、この事実を明確に示す必要があります。推奨される言語は、「注: このクラスには、equals と矛盾する自然な順序付けがあります。」

また、浮動小数点の等価性に関するドキュメント

この操作は、2 つの浮動小数点値が等しいかどうかを比較します。浮動小数点の計算には丸めが含まれる場合があるため、計算された float 値と double 値は正確ではない場合があります。金額など、正確でなければならない値については、BigDecimal などの固定精度型の使用を検討してください。正確である必要のない値については、たとえば if ( Math.abs(x - y) < .0000001 ) のように、ある範囲内で等しいかどうかを比較することを検討してください。Java 言語仕様のセクション 4.2.4 を参照してください。

わからないけど。誰でも助けてもらえますか?

0 投票する
1 に答える
5576 参照

ant - Findbug-ANTxsltスタイルシートのソースコードリファレンス

同じソースコードでfindbugsを2回実行してxmlおよびhtmlレポートを生成するANTターゲットがあります

htmlレポートはxmlレポートを使用して生成できるため、これはばかげています

ただし、生成されたhtmlレポートには正しいソースコード参照がありません。これを機能させ、重複するfindbugs呼び出しを回避する方法についてのアイデアはありますか?

回答後に更新

0 投票する
3 に答える
4901 参照

java - EclipseでFindBugsの警告を抑制します

文字列をロックとして使用しているので、オブジェクトが新しいインスタンスであることを確認したいと思います。通常、文字列を直接(二重引用符で)定義する方が効率的であるため、FindBugsは文句を言います。私のコードは次のようになります:

私はここで何か間違ったことをしていますか?Eclipse FindBugsプラグインは、これを問題として報告しています。

0 投票する
1 に答える
581 参照

android - Android で FindBugs のような静的解析ツールを使用することは可能ですか?

私は Android 開発に比較的慣れていないため、Google で簡単に検索しても興味深いものは何も見つかりませんでした。

0 投票する
2 に答える
10823 参照

c# - .NET/C# の FindBugs のようなもの

重複の可能性:
FindBugs for .Net

FindBugs for C#/.NET のようなものが必要です...

このようなものをどこで見つけることができるか教えていただけますか?

ありがとう。

0 投票する
3 に答える
2005 参照

java - 新しい値が列挙型に追加され、スイッチで処理されないことを検出する方法

時々、プロジェクトの列挙型に新しい値を追加する必要があります。

私が望むのは、次のように、新しい値を処理していないすべてのスイッチに対してコンパイル時エラーが発生することです。

default: 例外をスローするだけでは十分ではありません。コンパイル時にしたいと思います。

これは可能ではないと思いますが、誰かが巧妙なトリックを持っているかもしれません...

Findbugs にはそれらを見つけるためのルールがあると思っていましたが、これしか見ませんでした :

編集:私はマークの返信を選択しています.私はEclipseを使用しています. 私は findbugs の専門家ではないので、そのような機能を見落としているかもしれませんが、そうは思いません。

0 投票する
5 に答える
11664 参照

maven-2 - Findbugs Maven プラグイン - 複数のプロジェクトでの findbugs-exclude

Maven と Findbugs プラグインを使用して、複数のプロジェクトをセットアップしました。子プロジェクトの 1 つでいくつかのファイルを除外する必要があるため、に追加しましたfindbugs-exclude.xml。サブプロジェクトでビルドすると機能します。

トップレベルでビルドしようとすると、私の問題が発生します。findbugs-exclude.xmlサブプロジェクトでMaven が見つかりません。したがって、エラーが無視されず、エラーが原因で失敗します。findbugs-exclude.xml最上位ディレクトリに配置すると、除外が機能します。しかし、それはトップレベルを汚すものであり、好意的に見られることはありません。

findbugs-exclude.xmlサブディレクトリからファイルを使用するように Maven プラグインを取得する方法はありますか? できれば、トップ レベルでほとんどまたはまったく変更しないでください。

0 投票する
1 に答える
4002 参照

java - Findbugs で @CheckForNull などを使用するにはどうすればよいですか?

これを Findbugs で実行すると、次の警告が表示されます。

警告の詳細は次のとおりです。

バグ:arg非 null である必要がありますが、null 許容としてマークされています
パターン ID: NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE、タイプ: NP、カテゴリ:STYLE

このパラメーターは常に非 null である必要がある方法で使用されますが、パラメーターには明示的に として注釈が付けられていNullableます。パラメータまたは注釈の使用が間違っています。

ここで Findbugs が不満を言っていることを誰か説明できますか?

edu.umd.cs.findbugs.annotations.*ではなくメンバーを使用していることに注意してくださいjavax.annotations.*。(違いはありますか?)

セットアップは、Eclipse 3.6.1 用の FindBugs プラグイン 1.3.9.2009 です。


Matthew Flaschen は@NonNull代わりに使用することを提案しましたが、今ではこの問題に遭遇しました:

警告の詳細は次のとおりです。


バグ: 呼び出されたメソッドパターン id: NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE、タイプ: NP、カテゴリ:の戻り値が原因で、null ポインターの逆参照が発生する可能性があります。STYLE

メソッドからの戻り値はチェックなしで逆参照されます。nullそのメソッドの戻り値は、一般的にチェックする必要がある値ですnull。これによりNullPointerException、コードの実行時にエラーが発生する可能性があります。

blah基本的には満たしたいのです@CheckForNullが、 arg を にすると無理です@NonNull。これを機能させるにはどうすればよいですか?

0 投票する
2 に答える
1414 参照

java - findBugs が見つけたバグを除外する

findBugs を使用すると、バグのリストが表示されます。私が修正したいくつかのバグと、修正したいエラーではないものがあります。

次回コードで実行するときにこれらのエラーを無視するように findBugs を構成するにはどうすればよいですか?

0 投票する
3 に答える
387 参照

java - PMD - 個々の開発者による PMD の苦情を追跡する方法はありますか

各開発者の PMD、CheckStyle、Findbugs の非準拠レポートを追跡するためのツールまたはプラグインはありますか

ありがとうKR