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

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

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


当前回答

在Eclipse中使用以前版本的JRE时,是否安装了不同版本的JRE ?

如果不是:

右键单击您的项目->生成路径->配置生成路径 转到“图书馆”标签 添加库-> JRE系统库->下一步->工作空间默认JRE(或您可以从您的系统中选择替代JRE) ->完成

如果是,那么。

右键单击您的项目->生成路径->配置生成路径 转到“图书馆”标签 移除旧版本 添加库-> JRE系统库->下一步->工作空间默认JRE(或您可以从您的系统中选择替代JRE) ->完成

其他回答

在我的案例中,这是一个大型模块化项目,“红色X”只在父项目中显示。 我去了父项目

属性->构建路径

a删除了那里的JRE库,就这样,在父项目上再也没有JRE库了。

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

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

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

以下是我的解决方法: 在Java- adt: Windows -首选项- Java-安装的jre 只需添加另一个JRE,指向JDK文件夹下的“JRE”文件夹。(jdk中包含jre)。请确保您选择了新的jre。

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

build.gradle

plugins {
    id 'java'
    id 'eclipse'
}

然后运行

gradle cleanEclipse eclipse

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

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

Et voilà,这对我有用。