web-dev-qa-db-ja.com

Eclipseプロジェクトで使用されている未使用のjarを見つける

Eclipseプロジェクト(またはワークスペース)のクラスパスを通過し、未使用のjarを強調表示するために使用できるプラグイン/ツールはありますか?

65
RodeoClown

ClassPathHelper は良いスタートです。

孤立したjarファイルなどを自動的に識別します。

唯一の制限は、クラスで定義されていない依存関係です。依存性注入フレームワークの構成ファイル。

次のような他のオプション/補数もあります。

46
VonC

UCDetectorはこれに役立ちません。JARでは機能しません。 classpathHelperの場合、孤立したJARをリストする簡単な方法を見つけることができません(誰か、このためのチュートリアルがある場合、興味がある)。

したがって、私と同じようにMavenも使用している場合は、 この素晴らしいMavenプラグイン がわかります。このソリューションをあなたと共有したいと思います。次のように入力します。

mvn dependency:analyze

そして、依存関係にある未使用のJARのリストを即座に取得します。とても便利な !

30
Raphael Jolivet

次のプラグインのいずれかを使用できます: CDetector または Classpath Helper

7
KS2008

この目標をアーカイブするための非常に高速で興味深いツールを見つけました。

http://tattletale.jboss.org/

プログラムを解凍して実行するだけです:

Java -Xmx512m -jar tattletale.jar ~/myjavaproject/mydistribution output

これにより、さまざまなポイント(サイトのテキスト)を含む非常に印象的なレポートが生成されます。

  • JARファイル間の依存関係を特定する
  • クラスパスから欠落しているクラスを見つける
  • クラス/パッケージが複数のJARファイルにあるかどうかを確認する
  • 同じJARファイルが複数の場所にあるかどうかを確認する
  • 各JARファイルに必要なものと提供するもののリスト
  • クラスのSerialVersionUIDを確認します
  • 異なるバージョン番号を持つ類似のJARファイルを見つける
  • バージョン番号のないJARファイルを見つける
  • 未使用のJARアーカイブを見つける
  • 封印された/署名されたJARアーカイブを識別する
  • JARファイルでクラスを見つける
  • プロジェクトのOSGiステータスを取得します
  • ブラックリストに記載されているAPIの使用を削除する
  • .WARおよび.EARアーカイブに対して同じレポートを生成します
6
bobbel

私はこれが古いものであることを知っていますが、他の誰かがこれに出くわした場合、Eclipseはそれを単独で行います。

[プロジェクトのプロパティ]-> [Javaコードスタイル]-> [クリーンアップ]に移動し、Eclipse [ビルトイン]を選択すると、次の処理が行われます。

  • 宣言型を使用して静的メンバーへの非静的アクセスを変更する
  • 静的メンバーへの間接アクセスを直接アクセスに変更します(サブタイプを介したアクセス)
  • 未使用のインポートを削除する
  • 欠落している「@Override」アノテーションを追加する
  • 欠落している「@Override」アノテーションをインターフェースメソッドの実装に追加します
  • 欠落している「@Deprecated」アノテーションを追加します
  • 不要なキャストを削除する
  • 不要な「$ NON-NLS $」タグを削除する
0
Jon Carlstedt