3

新しいJavaバージョンにアップグレードするときにコードの変更を提案できるコード分析ツールがあるかどうか迷っていました。

例えば:

  • .close()Java 7にアップグレードするときに、自動クローズ可能なリソースの呼び出しを探します
  • catchJava 7にアップグレードするときは、同じ本文の複数の句を探してください
  • Java 5にアップグレードするときは、不要な手動のボクシングとアンボクシングを探してください
  • ..。

役立つ可能性のある既存のツール(Checkstyleなど)による特定のツールまたはルールはありますか?

4

3 に答える 3

2

IntelliJには、「言語の移行」というタグが付けられた一連の検査があります。これは、拡張されたforループなどの新しい言語構造から利益を得ることができる場所を見つけるのに役立ちます。

もちろん、リスクのない変換であれば、そのようなアドバイスをコードベース全体に一度に自動的に適用することもできます。

于 2013-03-18T15:36:12.133 に答える
0

Findbugsは、 Javaリソース管理.close()で説明されているように処理します。Findbugsの結果を理解し、他の多くの問題もキャッチします。

Finsbugsは、のオペランドとして使用される場合のように、問題のあるボクシングを処理し==ます。 Eclipseの警告は、すべての暗黙的なボクシング/アンボクシングについて警告するように構成できます。

catchソースごとに同一のボディを扱うものは何も知りません。

于 2013-03-18T15:34:16.543 に答える
0

このために特別に設計されたツールはわかりませんが、これらのタイプのアップグレードを検出または提案する一般的なコード監査に使用できるツールがいくつかあります。

  1. CodePro Analytix
  2. FindBugs
  3. PMD(特に冗長キャッチブロックのCPD部分)
  4. チェックスタイル

GoogleのCodeProEclipseプラグインには、あなたが言及したJava7の機能の数を見つけることができる非常に便利なコード分析機能がいくつかあります。

PMDのコピー/貼り付け検出器は、一般にコピー貼り付けされたコードを検出できるため、冗長なキャッチブロックを見つけるのに適しています。

于 2013-03-18T15:34:35.673 に答える