在Eclipse中导入项目后,我得到以下错误:

无法解析java.lang.Object类型。它是从必需的.class文件中间接引用的

但是,我已经将路径设置为C:\Program Files\Java\ jdk1.6.0_41在Eclipse Kepler中,通过Window»Preferences»Java»Installed JREs。


当前回答

右键单击项目——>在导航器中显示 在导航视图中,您可以看到.classpath文件,删除该文件并构建项目。这对我很管用。 PS.如果你已经将eclipse项目与一些版本控制集成在一起,比如perfce /svn,那么在删除.classpath之前解除项目链接将会很有帮助。

其他回答

解决我问题的是

1)在不带空格的目录下安装jdk:

C:/Java

而不是

C:/Program Files/Java

这是Windows中的一个已知问题。我也修复了JAVA_HOME

2)我的笔记本电脑上有java 7和java 8。所以我使用eclipse.ini定义了jvm。如果在eclipse.ini中没有-vm条目,则这不是强制步骤。我更新:

C:/Java/jdk1.7.0_79/jre/bin/javaw.exe

而不是:

C:/Java/jdk1.7.0_79/bin/javaw.exe

祝你好运

对我来说,再多的清理、关闭/重新打开项目和ide、删除/添加构建路径中的JRE都没用。

我找到的解决方案是从Eclipse中删除项目(不是从磁盘上),从磁盘上删除项目的Eclipse文件,然后再次导入到Eclipse中。这工作。

如果你正在使用Maven,它甚至更快:

关闭Eclipse(不需要删除项目) 执行命令mvn clean eclipse:clean eclipse:eclipse 打开Eclipse。您的项目仍然存在,问题应该已经解决了。

这是一个恼人的Eclipse Bug,似乎时不时就会咬人。请参阅http://dev-answers.blogspot.de/2009/06/eclipse-build-errors-javalangobject.html以获得可能的解决方案,否则请尝试以下方法;

关闭项目并重新打开。 清理项目(它将重新构建构建路径,从而使用JDK库重新配置) 或 删除并重新导入项目,如有必要,再次执行上述步骤。

更好的治疗方法是尝试NetBeans而不是Eclipse:-)

对于Gradle用户,使用eclipse插件。我没有直接使用eclipse,而是在Neovim上使用jdtls。这为我解决了问题。

build.gradle

plugins {
    id 'java'
    id 'eclipse'
}

然后运行

gradle cleanEclipse eclipse

当类/java-项目无法解析正确的JDK库时,会出现此错误消息。比如说,在我的主要项目A中,我得到了这个错误。项目A对项目B有一个maven依赖关系。项目B指向JDK-11。项目A指向JDK-9

更正我做:使项目也指向JDK-11。这为我解决了问题