Eclipse luna重复方法名称

时间:2015-12-18 02:03:00

标签: java eclipse eclipse-luna

背景:我们遇到的主要问题是我们的Eclipse Helios在Redhat linux中运行,圣地亚哥6崩溃,有时没有响应。我们无法找出根本原因,并尝试了从不同站点读取的不同解决方案,包括stackoverflow。

到目前为止我做了什么:所以我决定下载Eclipse Luna并从Eclipse Helios导入现有项目,并将eclipse luna中安装的jre更改为内置于WLS 1.8中的jrockit(如我们正在使用遗留框架)

问题:我导入现有项目后,eclipse luna出现了问题。

Duplicate methods named put with the parameters (K, V) and (Object, Object) are inherited from the types HashMap and AbstractMap

The method put(Object, Object) is ambiguous for the type

但是在eclipse helios中没有遇到这个错误。

我也下载了eclipse Juno,Kepler,但是和luna一样。

问题:是否有针对此的解决方法或如何在eclipse luna中关闭并忽略此错误?

编辑:示例代码按要求

这是有错误的类之一。

public class DummyMessageMap extends HashMap implements MessageMap {
  // implementation of the interface but returns null values.
}

public interface MessageMap extends Map{

    public Message getMessage(String key);
    public String getLanguage();
}

2 个答案:

答案 0 :(得分:0)

这对我来说似乎是一个超载问题。

如果参数相同,Java无法确定使用哪一个。因此,它会引发重复的方法错误。

尝试更改方法参数并再次测试程序,可能是错误来自于错误地重载方法。

答案 1 :(得分:0)

此处的问题是,界面bin/hadoop jar hadoop-examples-1.2.1.jar WordCount /user/Taniya/input /user/Taniya/output 通过两条路径到达您的班级java.util.Map,即DummyMessageMapDummyMessageMap extends HashMap extends AbstractMap implements Map。在第二个路径中,如错误所示,通用类型DummyMessageMap implements MessageMap extends MapK在您的代码中被指定为Vobject。这是一种名为object的设计气味,除了摆脱这种路径冲突之外别无他法。如果可能,请尝试从Multipath Hierarchy删除extends Map