我正在尝试使用Eclipse JDT AST解析类。在包含初始JAR并整理出更多依赖项之后,它有7个以上的JAR并且我仍然有NoClassDefFoundError异常。每当我尝试使用很少或没有文档来测试库时,就会出现这种情况。试验和错误似乎是一种非常愚蠢(和讨厌)的方法来解决这个问题。
有没有办法使用Eclipse自动对其进行排序?
更新:后来我发现添加你拥有的所有JAR,并使用Ctrl-T(查看/定位类型),可以手动找到JAR。 Google迄今为止提供的That was the solution。还有更好的方法吗?
答案 0 :(得分:4)
如果你参考这个问题Finding unused jars used in an eclipse project,你也有:
ClassPathHelper ,可以快速关注未解决的课程:
它会自动识别孤儿罐,封锁(模糊)类等等。
唯一的限制是未在类中定义的依赖项,例如在依赖注入框架配置文件中。
答案 1 :(得分:1)
我发现专门为浏览eclipse源代码设置工作区非常有用。通过这种方式,您可以使用PDE工具,如插件间谍,捆绑依赖性分析,浏览文档等,就像您自己的插件项目一样。我发现this article at Vogella是一个非常有用的指南。
如果您知道所需类的哪个包,则可以通过创建新的OSGi启动配置来生成依赖项的传递闭包,只选择单个包。点击Add Required
按钮,您可以看到使用您感兴趣的所有捆绑包。
修改:
答案 2 :(得分:0)
您可以使用依赖性分析器,如: JarAnalyzer
这将解析一个充满Jars的目录,并为您提供一个XML输出依赖关系图,其中有几个工具可以以图形或文本形式显示。