1

我使用 Apache CXF、Spring、Hibernate 等使用 IntelliJ IDEA 开发 Web 服务应用程序。所有这些框架都附带了很多库,但我没有使用所有这些库。

目前,我浪费了大量时间来确定必须将哪些 jar 文件部署到生产环境中以确保系统正常工作。

是否有一种简单快捷的方法来确定我的应用程序加载/需要哪些库,更精确地加载/需要哪些 jar 文件。

4

3 回答 3

1

尝试 Loosejar:http ://code.google.com/p/loosejar/

对于演示,我在我的 Eclipse 工作室中针对一个小型应用程序运行了 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% 的利用率显示

在此处输入图像描述

另一种方法是手动完成。在我们的一个项目中,我们手动将 jars 添加到项目中,直到所有编译问题都得到解决。这种方法有一个限制,如果一个 jar 引用另一个 jar,那么我们只能在运行时了解它。

于 2013-02-15T12:31:25.363 回答
0

尝试依赖查找器,它可能能够列出您所有的库依赖项。

于 2013-02-14T19:49:25.943 回答
0

使用Maven。它是 Java 世界中最流行的依赖管理工具。

于 2013-02-15T12:59:27.880 回答