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

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


当前回答

既然你给我们的细节很少,很可能你所做的,这是一个非常容易犯的错误,而不是去

生成路径>配置生成路径>项目

然后从那里添加额外的项目文件夹,而不是

生成路径>配置生成路径>库

然后从那里添加你的项目文件夹。

如果你的代码是正确的,这是最肯定的情况,但通过ctrl+空格快捷键自动重新组织导入,而不是你的导入语句引用com.your。Additionalproject,你的引用都指向bin.com.your.additionalproject。

注意这个箱子。这意味着你通过将你的其他项目文件夹结构作为一个库来间接引用你的类,让你的IDE做所有的工作来查找你所引用的二进制类。

要纠正这一点,请从Libraries中删除该文件夹,并将其添加到Projects选项卡下,并重新组织导入。您的项目应该可以正常工作。

其他回答

在我的例子中,问题是“javax.ws.rs”。在Tomcat中启动web应用程序时,执行webapplicationexception无法解决。

添加以下库(Maven)的解决方案:

<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>javax.ws.rs-api</artifactId>
    <version>2.0</version>
</dependency>

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

当jar文件中的类不遵循与jar文件夹结构相同的结构时,就会发生此错误。

例如,如果你的类文件包含包com.test.exam,并且从这个类文件创建的classes.jar包含结构test.exam…将抛出错误。您需要纠正classes.jar的包结构,然后将其包含在eclipse构建路径中…

我得到的错误,当我只是改变一些svn设置,而不是在代码中的任何东西。只是清理项目修复了错误。

将Build路径中的JRE指向JDK。这对我很管用。