我在Eclipse中出现了一个错误。这个错误信息是什么意思:

无法解析iglu.ir.TermVector类型。它是从必需的.class文件中间接引用的


当前回答

听起来这是一个已知的问题(Bug 67414),在3.0已经解决了……有人评论说他们在3.4中也会遇到这种情况。

与此同时,解决方法是从项目中删除JRE系统库,然后再将其添加回来。以下是步骤:

Go to properties of project with the build error (right click > Properties) View the "Libraries" tab in the "Build Path" section Find the "JRE System Library" in the list (if this is missing then this error message is not an eclipse bug but a mis-configured project) Remove the "JRE System Library" Hit "Add Library ...", Select "JRE System Library" and add the appropriate JRE for the project (eg. 'Workspace default JRE') Hit "Finish" in the library selection and "OK" in the project properties and then wait for the re-build of the project

希望这个错误能得到解决。

其他回答

在我的例子中,这是因为我在pom.xml文件中添加了一个新的依赖项。

新的依赖项依赖于旧版本的库(2.5)。我的pom.xml中的另一个库需要相同的库,但它需要3.0版本。

出于某种原因,当Maven遇到这些冲突时,它会简单地忽略最新的版本。在Eclipse中查看pom.xml时,您可以选择底部的“依赖层次结构”选项卡,以查看依赖关系是如何解析的。在这里,您将发现是否因为这个原因而忽略了所讨论的库(以及类)。

在我的例子中,这就像锁定新版本一样简单。您可以通过右键单击该条目来做到这一点—在上下文菜单中有一个选项可以将其锁定。

它的意思是:“您使用的类需要不在类路径上的另一个类。”您应该确保(如Harry Joy所建议的)将所需的jar添加到类路径中。

我有这个错误,因为一个损坏的本地maven存储库。

因此,为了解决这个问题,我所要做的就是进入我的存储库,删除有关.jar所在的文件夹,然后在Eclipse中强制执行更新maven。

这很可能是Eclipse搞混了,因为这是一个实际的错误。我忽略了这个错误,并运行了它所抱怨的endpointInterface的web服务,它运行得很好,除了每次我想要运行它时都必须处理对话框。只是另一个不透明的错误,什么也没告诉我。

对我来说,当我使用已经使用了很长时间的旧jar集将jdk升级到1.8.0_60时,就会发生这种情况。如果我回到jdk1.7.0_25,所有这些问题都消失了。这似乎是JRE和库之间的兼容性问题。