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

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

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


当前回答

不管这有多简单,请检查您的Java安装。对我来说,rt.jar丢失了。

在摆弄了半天Eclipse设置却一无所获之后,我发现了这一点。 绝望之下,我最终决定尝试从命令行编译项目。我不期望看到任何错误,因为我认为这是一个Eclipse的问题,但令我惊讶的是,我看到了这个:

Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

我不知道我的Java安装发生了什么,rt.jar去了哪里。无论如何,这都是一个提醒,提醒你检查失败清单,并勾选所有的选项,不管它们有多不可思议。那会节省我很多时间。

其他回答

当我们使用tomcat 6和jdk 1.8版本时,一些特性将无法工作,您得到的这个错误就是其中之一。需要在eclipse中将JDK版本修改为稳定版本(最好是JDK 1.6或JDK 1.8_65)才能解决此错误。

在eclipse中 步骤1:属性-> Java构建路径-> jre系统库(删除) 步骤2:add -> jre system library -> alternate jre -> installed jre -> add -> Standard VM -> (in jre home, place jdk path) -> finish

现在清洗并检查项目

当我从Eclipse Luna导入一个Java 1.8项目到Eclipse Kepler时,就发生了这种情况。

右键单击项目>生成路径>配置生成路径… 选择Libraries选项卡,您应该会看到带有错误的Java 1.8 jre 选择java 1.8 jre并单击Remove按钮 添加库…> JRE系统库>下一个>工作空间默认>完成 单击OK关闭属性窗口 进入项目菜单>清洁…>好吧

Et voilà,这对我有用。

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

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

有时这个错误发生在更新JAVA之后。如果是,请在eclipse存在的文件夹中找到eclipse.ini文件。然后将-vm keyward下的行更改为jre/bin文件夹的新路径,获取路径go to programfiles -> Java -> jre最新版本-> bin文件夹复制路径并替换在-vm关键字下的行。

不管这有多简单,请检查您的Java安装。对我来说,rt.jar丢失了。

在摆弄了半天Eclipse设置却一无所获之后,我发现了这一点。 绝望之下,我最终决定尝试从命令行编译项目。我不期望看到任何错误,因为我认为这是一个Eclipse的问题,但令我惊讶的是,我看到了这个:

Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

我不知道我的Java安装发生了什么,rt.jar去了哪里。无论如何,这都是一个提醒,提醒你检查失败清单,并勾选所有的选项,不管它们有多不可思议。那会节省我很多时间。