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

Eclipse中的Java项目:无法解析Java.lang.Object类型。它是从必需的.class文件间接引用的,java,eclipse,Java,Eclipse,在Eclipse中导入项目后,我遇到以下错误: 无法解析类型java.lang.Object。它是从必需的.class文件间接引用的 但是,我在Eclipse开普勒中通过窗口»首选项»Java»将路径设置为C:\Program Files\Java\jdk1.6.0\U 41。安装的JREs对象类是Java中所有类的基类,如果缺少它,则意味着构建路径中没有jdk库。我对开普勒了解不多,但您需要确保它指向正确的jdk进行编译,指向正确的jre运行java应用程序 但是,我已将路径从设置为C:\Pr

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

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


但是,我在Eclipse开普勒中通过窗口»首选项»Java»将路径设置为C:\Program Files\Java\jdk1.6.0\U 41。安装的JREs

对象类是Java中所有类的基类,如果缺少它,则意味着构建路径中没有jdk库。我对开普勒了解不多,但您需要确保它指向正确的jdk进行编译,指向正确的jre运行java应用程序

但是,我已将路径从设置为C:\Program Files\Java\jdk1.6.0\u 41 eclipse开普勒工具栏->windows->首选项->java->安装的jre


您正试图在首选项中指向jdk而不是jre。工具栏->windows->首选项->java->已安装的jre应该指向jre而不是jdk。

这是一个恼人的Eclipse Bug,它似乎时不时地会咬人。请参阅以获取可能的解决方案,否则请尝试以下方法

  • 关闭项目并重新打开它

  • 清理项目(它将重建构建路径,从而使用JDK库重新配置)

  • 删除并重新导入项目,如有必要,请再次执行上述步骤

更好的解决方法是尝试使用NetBeans而不是Eclipse:-)

以下是我如何解决它的: 在JavaADT中:Windows-Preference-Java-Installed JRE
只需添加另一个JRE,指向JDK文件夹下的“JRE”文件夹。(jre包含在jdk中)。确保您选择了新的jre。

其他答案都不适合我。但这样做确实:

  • 在包资源管理器中的项目上单击鼠标右键
  • 来源>清理
  • 下一步>完成

  • 当我这样做时,Eclipse向我的一个类中添加了一个导入。我认为发生这种情况是因为我保存的项目缺少导入,可能是下班后赶回家。

    以下步骤可能会有所帮助:

  • 右键单击项目»属性»Java构建路径
  • 选择库选项卡
  • 找到JRE系统库并将其删除
  • 单击右侧的添加库…按钮添加JRE系统库(工作区默认JRE)

  • 另一个问题可能是没有设置Android项目构建目标

  • 右键单击项目
  • 选择属性
  • 点击安卓
  • 勾选适当的项目构建目标
  • 申请|好的

  • 当我将一个Java1.8项目从EclipseLuna导入EclipseKepler时,我就遇到了这种情况

  • 右键单击项目>生成路径>配置生成路径
  • 选择Libraries选项卡,您会看到Java1.8JRE出现错误
  • 选择Java1.8JRE并单击Remove按钮
  • 添加库…>JRE系统库>下一步>工作区默认值>完成
  • 单击“确定”关闭“属性”窗口
  • 转到项目菜单>清理…>嗯

  • 等等,这对我很有效。

    在添加控制器后,我在eclipse上使用play java应用程序时遇到了这个问题, 我通过构建路径删除并重新安装了JRE,然后删除并导入了我的项目,该项目自动解决了这个问题。 谢谢gyro。

    右键单击项目-->在Navigator中显示 在navigator视图中,您可以看到.classpath文件,请删除此文件并生成项目。这对我有用。
    另外,如果您已经将eclipse项目与一些版本控制(如perfoce/svn)集成,那么在删除.classpath之前取消项目链接将很有帮助。

    我在eclipse窗口中遇到了同样的问题,无法从JNI添加依赖的.class文件。 为了解决这个问题,我将所有代码移植到NetBeans IDE


    这似乎是一个Eclipse错误,尽管重新启动Eclipse对我来说效果很好,希望这对其他人也有帮助


    编辑:下一次我遇到这个问题时,上面的解决方案不起作用-问题是我导入的项目-设置了错误的java运行时-不存在(我的JRE中有java 8,但导入的项目设置为java 11,因此我必须将项目java版本更改为8。另一种选择是在Eclipse首选项中添加更多JRE—如果项目确实需要更新的JRE才能工作)

    解决我问题的方法是

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

    C:/Java
    
    而不是

    C:/Program Files/Java
    
    这是Windows中的一个已知问题。我还修复了
    JAVA\u HOME

    2) 我在笔记本电脑上安装了Java7和Java8。因此,我使用
    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中使用以前版本的JRE时,您是否在之后安装了不同版本的JRE

    如果不超过:

  • 右键单击项目->生成路径->配置生成路径
  • 转到“库”选项卡
  • 添加库->JRE系统库->下一步->工作区默认JRE(或者您可以从系统中选择备用JRE)->完成
  • 如果是,则比

  • 右键单击项目->构建路径->配置Bu
    Error occurred during initialization of VM
    java/lang/NoClassDefFoundError: java/lang/Object
    
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.0</version>
                <configuration>
                    <release>9</release>
                </configuration>
            </plugin>
            </plugins>
        </build>
    
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.0</version>
                <configuration>
                    <release>11</release>
                </configuration>
            </plugin>
            </plugins>
        </build>