1

私は、Apache CXF、Spring、Hibernateなどを使用してIntelliJIDEAでWebサービスアプリケーションを開発しています。これらのフレームワークはすべて多くのライブラリに付属していますが、私はそれらすべてを使用しているわけではありません。

現時点では、システムが適切に機能するように、本番環境にデプロイする必要のあるjarファイルを判別するために多くの時間を浪費しています。

どのライブラリ、より正確にどのjarファイルがアプリケーションによってロード/必要かを判断する簡単で迅速な方法はありますか?

4

3 に答える 3

1

Loosejarをお試しください:http ://code.google.com/p/loosejar/

デモでは、日食ワークショップの小さなアプリケーションに対してLoosejarエージェントを実行しました。アプリケーションは4つのjar(jsoup-1.6.1.jar、httpclient-4.2.3.jar、httpcore-4.2.2.jar、commons-logging-1.1.1.jar)を使用します。未使用のjarファイルをビルドパス「soap-2.3.1.jar」に追加して、アプリケーションを起動しました。次に、jconsoleを開き、LooseJarMBeanの概要を表示しました(下のスクリーンショット)。結果は、各jarから使用されたクラスの数を示しています。未使用のjarファイルは使用率0%で表示されます

ここに画像の説明を入力してください

別の方法は、手動で行うことです。私たちのプロジェクトの1つでは、すべてのコンパイルの問題が解決されるまで、プロジェクトにjarを手動で追加しました。このアプローチには制限があり、jarが別のjarを参照している場合、実行時にのみそれについて知ることができます。

于 2013-02-15T12:31:25.363 に答える
0

Dependency Finderを試してみてください。これにより、すべてのライブラリの依存関係を一覧表示できる場合があります。

于 2013-02-14T19:49:25.943 に答える
0

Mavenを使用します。これは、Javaの世界で最も人気のある依存関係管理ツールです。

于 2013-02-15T12:59:27.880 に答える