Java 列出jar中未找到的所有类的简单方法

Java 列出jar中未找到的所有类的简单方法,java,Java,TL;DR 是否有一个实用程序可以分析.jar文件并生成jar中引用的类的列表,这些类在jar本身中不存在 背景 我在一个有15年历史的代码库中,所有jar都被签入SCM,并且有一个很大的Eclipse.classpath文件 我想将其转换为Maven,但显然我会遇到一些问题,其中许多JAR是类路径中其他JAR的可传递依赖项。我只想知道最高级的罐子 我目前的行动计划是从所有jar中构建一个类列表,并将它们存储在索引中。其次,我需要逐个jar地计算出如果jar单独在类路径上时会发生的所有“Clas

TL;DR

是否有一个实用程序可以分析.jar文件并生成jar中引用的类的列表,这些类在jar本身中不存在

背景

我在一个有15年历史的代码库中,所有jar都被签入SCM,并且有一个很大的Eclipse.classpath文件

我想将其转换为Maven,但显然我会遇到一些问题,其中许多JAR是类路径中其他JAR的可传递依赖项。我只想知道最高级的罐子

我目前的行动计划是从所有jar中构建一个类列表,并将它们存储在索引中。其次,我需要逐个jar地计算出如果jar单独在类路径上时会发生的所有“ClassNotFoundExceptions”

从那里我应该能够找出一个依赖关系图,等等


因此,我的问题是:如何在运行时找出给定jar的所有ClassNotFoundException是什么(即它所依赖的所有类,而这些类本身并不存在于jar中)

这可能更适合。这里似乎有点离题:“要求我们推荐或查找工具、库或喜爱的非站点资源的问题对于堆栈溢出来说是离题的,因为它们往往会吸引固执己见的答案和垃圾邮件。相反,到目前为止,我们已经做了些什么来解决它。”也许你可以用另一种方法来解决这个问题:添加所有依赖项,然后使用
mvn dependency:analyze
来确定在这个模块中哪些依赖项是多余的。@StevenPessall-hmmm,这主意不错。我会进一步调查的。