問題タブ [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.
maven-2 - Maven サイトのライフサイクル中に存在するスコープ
Maven サイトのレポート生成時に使用できる Maven スコープはどれですか? 利用可能です。
FindBugs フィルタ ファイルをアプリケーション jar に入れることなく、いくつかのモジュール間で共有しようとしています。私はコモンズ プロジェクトに入れることを考えていました。これは、「build-tools」の分類子を使用して別の jar にパッケージ化し、他のそのようなファイルと一緒にパッケージ化します。それを必要とするすべてのプロジェクトは、分類子を使用してプロジェクトをインポートします。
maven-2 - POM を定義するのではなく、POM を参照する際に評価されるネストされた Maven プロパティ
各子プロジェクトと孫プロジェクトで実行される親 pom でレポート構成を定義しています。
そのようです:
basedir
問題は、定義している POM ではなく、各子がその子を挿入することです。私は ANT に相当するものを探していると思います<property name="name" location="${basedir}"/>
。
java - パラメータとして渡されたオブジェクトの値の変化を検出します
私は今、このようなコードで作業しています
パラメータとして渡されたオブジェクトを変更するのは悪い習慣だと思います。そのようなコードを検出するツールはありますか?findbugs、pmd、checkstyleを調べましたが、これに対するチェックは見つかりませんでした。
PS悪い例でごめんなさい。
java - 自分の Java アプリケーションに対してどの標準的な最適化リファクタリングを実行できますか?
私はセミビッグ Java アプリケーションを持っています。それは非常に貧弱に書かれており、物事を少しきれいにしてパフォーマンスを向上させるためにできる簡単なことはたくさんあると思います。
たとえば、最近見つけた
関数は、同じ正規表現を使用するループでかなり頻繁に使用されます。だから私はそれをプリコンパイル済みの Patternsに置き換えました。私は FindBugs を使用していますが (これは素晴らしいところであります)、この問題を見つけられず、職場で使用できるツールが限られています。
私が見るべきこのような単純なものは他にありますか?
java - 空の同期ブロックが正しいスレッド セマンティクスを実現できるのはどのような状況ですか?
コード ベースのFindbugsレポートを調べていたところ、トリガーされたパターンの 1 つが空のsynchronzied
ブロック (つまりsynchronized (var) {}
) でした。ドキュメントには次のように書かれています:
空の同期ブロックは、ほとんどの人が認識しているよりもはるかに微妙であり、正しく使用するのが難しく、空の同期ブロックは、あまり工夫されていないソリューションよりも優れたソリューションになることはほとんどありません。
私の場合、ブロックの内容がコメントアウトされていたために発生しましたが、synchronized
ステートメントはまだそこにありました。synchronized
空のブロックが正しいスレッド セマンティクスを実現できるのはどのような状況ですか?
java - JUnit テストを無視するための FindBugs フィルタ ファイル
test/* ファイルではなく src/* ファイルのみをスキャンする findbugs ant スクリプト用のフィルター ファイルを設定する必要があります。
名前に「test」が含まれるファイル名またはパッケージ名を無視して、すべてのクラスをチェックするための構文は何ですか?
java - Javaバイトコードで配列サイズを検出する方法(FindBugs)
もちろん、コンパイル時にその情報がわかっている場合は、バイトコードを調べて、割り当てられている配列のサイズを確認したいと思います。
背景:FindBugs検出器(コンパイルされたバイトコードを調べる)を作成し、配列割り当ての特定の発生を報告したいと思います。誤検知を除外するために、私は「小さな」配列には関心がありませんが、コンパイル時にサイズが利用できないか、構成可能なしきい値よりも大きい配列にのみ関心があります。
FindBugsのソースコードはあまり文書化されていないので、始める方法についてのいくつかの指針を探しています-おそらく、私が見ることができるのと同じようなことをしている検出器がすでにあるでしょう。
java - PreparedStatement の再利用
私たちのコード ベースで findbugs を実行したところ、まだクローズする必要があるステートメントがあと 2 つあることが指摘されました。コードのこのセクションでは、次を実行します。
3 つの異なるクエリに対して、preparedStatement を再利用します。finally ブロックでは、リソースを閉じます。
次の connection.prepareStatement(query) の前にステートメントを閉じる必要があります。それとも、このfindbugsは慎重ですか?