java – 这个模糊的方法错误是Eclipse Juno错了吗?

今天我一直在玩 Eclipse Juno.来自Helios,这是一个很好的升级.一切都正常,除了一个新的编译错误.

我们使用java.net框架’Fuse’,我们调用以下方法

ResourceInjector.get().inject(true,this);

Eclipse告诉我们:

The method inject(Object[]) is ambiguous for the type ResourceInjector

以下方法相冲突:

inject(Object... components);
inject(boolean arg0,Object... arg1);

它在Eclipse Helios中工作得很好(使用Java 1.6.0.25),但现在它提供了一个编译错误,不再需要运行.在我们看来,这是Eclipse Juno中的一个错误,如果我们使用Maven构建使用的是正确的…有没有人知道这样做的一个工作?

解决方法

这实际上是Java 5和Java 6中的一个错误.这已经在Java 7中得到修复,Eclipse现在检查这个“bug”.

更多关于这里的错误
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6886431

在以下情况下应该采用什么方法

inject(true);

两者都可以应用,但是,原始布尔肯定是更好的匹配?不符合Java语言规范(JLS):

>根据15.12.2.5,这两个都不比另一个更具体(int<:Object is not true)
解决方法(我们无法更改保险丝本身):

ResourceInjector.get().inject(true,new Object [] {this});

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...