The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files [duplicate]

社会主义新天地 提交于 2020-01-27 04:12:09

问题


I am writing a simple Java program on Eclipse.

import java.util.HashMap;

public class Demo {
    public static void main(String[] args) {
        HashMap<String, String> hash = new HashMap();
    }
}

The above program generates the following errors.

  1. The project was not built since its build path is incomplete. Cannot find the class file for java.util.Map$Entry. Fix the build path then try building this project.
  2. The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files.

I searched over the internet almost everywhere, but I was not able to correct this.

I have installed Java SE 8u5 (JDK) (http://www.oracle.com/technetwork/java/javase/downloads/index.html?ssSourceSiteId=otnjp)

  1. Windows -> Preferences -> Installed JREs shows

a) jdk C:\Program Files\Java\jdk

  1. Project -> Build Path -> Libraries shows

a) JRE system library (jdk)

b) JRE system library (jre8)

Please somebody help me.

EDIT: Changing Eclipse version from Helios to Juno solved the problem!


回答1:


I've seen occasional problems with Eclipse forgetting that built-in classes (including Object and String) exist. The way I've resolved them is to:

  • On the Project menu, turn off "Build Automatically"
  • Quit and restart Eclipse
  • On the Project menu, choose "Clean…" and clean all projects
  • Turn "Build Automatically" back on and let it rebuild everything.

This seems to make Eclipse forget whatever incorrect cached information it had about the available classes.



来源:https://stackoverflow.com/questions/24110620/the-type-java-util-mapentry-cannot-be-resolved-it-is-indirectly-referenced-fro

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!