Java EclipseJuno是否有这个模棱两可的方法错误?

Java EclipseJuno是否有这个模棱两可的方法错误?,java,eclipse,autoboxing,eclipse-juno,Java,Eclipse,Autoboxing,Eclipse Juno,今天我一直在玩EclipseJuno。来自太阳神,这是一个伟大的升级。除了一个新的编译错误外,一切正常 我们使用的是java.net框架“Fuse”,我们称之为以下方法: ResourceInjector.get().inject(true, this); Eclipse告诉我们: The method inject(Object[]) is ambiguous for the type ResourceInjector 以下方法相互冲突: inject(Object... componen

今天我一直在玩EclipseJuno。来自太阳神,这是一个伟大的升级。除了一个新的编译错误外,一切正常

我们使用的是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);

它在EclipseHelios中运行良好(使用Java1.6.0.25),但现在它出现编译错误,不想再运行了。在我们看来,这是EclipseJuno中的一个bug,如果我们使用Maven进行构建,那么构建就很好了。。。有人知道解决方法吗?

这实际上是Java 5和Java 6中的一个bug。这在Java7中已经修复,Eclipse现在检查这个“bug”

有关此错误的更多信息,请参见:

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

inject(true);
当然,两者都可以应用,但基本布尔值肯定是更好的匹配?不符合Java语言规范(JLS):

  • 根据15.12.2.5,两个问题都比另一个(int相关问题)更具体,请复制我的答案:

    已针对此问题提交并修复了一个错误。
    以下是修复程序的文档:

    基本上,要修复编译器错误,请获取最新的EclipseJuno版本(从现在开始),在
    eclipse.ini
    中的
    -vmargs
    之后添加以下行:(然后您可能需要重新启动eclipse并重建项目)


    这真的很奇怪,如果你改变API

    注入(布尔值arg0,对象…arg1)

    注入(布尔值arg0,对象…arg1)

    然后注入(true,this)不再模棱两可


    我认为修复bug绝对是个坏主意

    “容忍”应该表明这是故意的…这是Java 5和6中的一个bug,显然,在Java 7中得到了修复:预期行为:编译器错误。@NicholasDiPiazza我有Neon 1.a,这对我也不起作用。我自己也注意到了这一点。寓意似乎是,不要在变量参数前面加上基元类型。我有这个iss当尝试升级到Juno并将方法(int,Object[])更改为方法(Integer,Object[])时,ue工作正常。由于编译器将强制执行此操作,因此除了使用该程序之外,似乎没有其他选择。
    -DtolerateIllegalAmbiguousVarargsInvocation=true