找到最小的必要java类路径

Ras*_*ber 8 java dependencies jar

有没有工具来检测不需要的jar文件?

比如说我有myapp.jar,我可以使用包含hibernate.jar,junit.jar和easymock.jar的类路径启动它.但实际上它只使用hibernate.jar可以正常工作,因为调用junit.jar的代码是不可访问的.

我意识到反思可能使事情复杂化,但我可以使用忽略反射的工具.除此之外,它似乎是一个相对简单的问题需要解决.

如果没有这样的工具,那么决定需要哪些依赖项的最佳实践是什么?在我看来,这一定是一个普遍的问题.

Bil*_*l K 3

这在可能使用反射的系统中是不可能的。

也就是说,如果您不使用任何反射,静态分析工具可以做得很好。