私はいくつかのクラスが存在する大規模なEclipseプロジェクトを持っていますが、それらはどこでも使用することをやめましたが、@ Deprecatedとマークされることはありませんでした。
これらすべてを簡単に見つけるにはどうすればよいですか?
また、 UCDetector を使用したい:
UCDetector(Unecessary Code Detector)は、不必要な(デッド)public Javaコード。最終的なコード、保護されたコード、またはプライベートなコードを作成するためのオープンソースEclipseプラグインツールです。
ボーナス:クラス間の循環依存関係も見つけることができます
( 他のツールの数 -Findbugsを含む-どうやってそれを行うかを知っている)
実行時にのみ認識されるインターフェイス実装がある場合、UCDetectorは機能しません。
実装クラスを未使用として誤ってマークします。
更新2017:静的コード分析は8年でかなり進化しました。
SonarLint for Eclipse を使用すると、最新の SonarJava 4.6プラグイン を使用してコードを分析できます。
それは デッドコードを見つける になります。
ProGuardは、未使用のクラス/メソッドのレポートを印刷するために使用できます。ただし、依存するすべてのjarを提供するのは苦痛です。
これらのオプションは、アプリケーションmypackage.MyApplicationの未使用のクラス、フィールド、およびメソッドをリストします。
-injars in.jar
-libraryjars <Java.home>/lib/rt.jar
-dontoptimize
-dontobfuscate
-dontpreverify
-printusage
-keep public class mypackage.MyApplication {
public static void main(Java.lang.String[]);
}
分析を使用するだけです|適切な検査を有効にしてコードを検査します(宣言冗長グループでの未使用宣言)。
IntelliJ 11 CEを使用すると、「分析|名前による検査の実行... |未使用の宣言」が可能になりました