我在Eclipse中出现了一个错误。这个错误信息是什么意思:
无法解析iglu.ir.TermVector类型。它是从必需的.class文件中间接引用的
我在Eclipse中出现了一个错误。这个错误信息是什么意思:
无法解析iglu.ir.TermVector类型。它是从必需的.class文件中间接引用的
当前回答
In my case ,I created a project and made its minSdkVersion=9 and targetSdkVersion=17. I used automatically generated libs/android-support-v4.jar. I also had to make use of ActionBarActivity using android-support-v7-appcomapt.jar. So I just copied the android-support-v7-appcompat.jar file from android-sdk/extras/andrid/support/v7/appcompat/libs folder and pasted it to my project libs folder. And this caused the above error. So basically,I needed to put android-support-v4.jar file from android-sdk/extras/andrid/support/v7/appcompat/libs as well to my project libs folder. As per my knowledge the v7.jar file had dependencies on v4.jar file. So ,it needed it own v4.jarfile,instead of my project,automatically created v4.jar file.
其他回答
对我来说,当我使用已经使用了很长时间的旧jar集将jdk升级到1.8.0_60时,就会发生这种情况。如果我回到jdk1.7.0_25,所有这些问题都消失了。这似乎是JRE和库之间的兼容性问题。
既然你给我们的细节很少,很可能你所做的,这是一个非常容易犯的错误,而不是去
生成路径>配置生成路径>项目
然后从那里添加额外的项目文件夹,而不是
生成路径>配置生成路径>库
然后从那里添加你的项目文件夹。
如果你的代码是正确的,这是最肯定的情况,但通过ctrl+空格快捷键自动重新组织导入,而不是你的导入语句引用com.your。Additionalproject,你的引用都指向bin.com.your.additionalproject。
注意这个箱子。这意味着你通过将你的其他项目文件夹结构作为一个库来间接引用你的类,让你的IDE做所有的工作来查找你所引用的二进制类。
要纠正这一点,请从Libraries中删除该文件夹,并将其添加到Projects选项卡下,并重新组织导入。您的项目应该可以正常工作。
我有这个错误,因为一个损坏的本地maven存储库。
因此,为了解决这个问题,我所要做的就是进入我的存储库,删除有关.jar所在的文件夹,然后在Eclipse中强制执行更新maven。
在我的例子中,这是因为我在pom.xml文件中添加了一个新的依赖项。
新的依赖项依赖于旧版本的库(2.5)。我的pom.xml中的另一个库需要相同的库,但它需要3.0版本。
出于某种原因,当Maven遇到这些冲突时,它会简单地忽略最新的版本。在Eclipse中查看pom.xml时,您可以选择底部的“依赖层次结构”选项卡,以查看依赖关系是如何解析的。在这里,您将发现是否因为这个原因而忽略了所讨论的库(以及类)。
在我的例子中,这就像锁定新版本一样简单。您可以通过右键单击该条目来做到这一点—在上下文菜单中有一个选项可以将其锁定。
它的意思是:“您使用的类需要不在类路径上的另一个类。”您应该确保(如Harry Joy所建议的)将所需的jar添加到类路径中。