Java Eclipse内部编译器错误

Java Eclipse内部编译器错误,java,eclipse,java-8,Java,Eclipse,Java 8,在Eclipse中使用此代码时: import java.util.Arrays; import java.util.HashSet; import java.util.List; import java.util.Set; public class Test { public static void main(String[] args) { List<Object> objs = Arrays.asList(new Object(), new Obj

在Eclipse中使用此代码时:

import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class Test {  
    public static void main(String[] args) {
        List<Object> objs = Arrays.asList(new Object(), new Object());
        Set<String> s = objs.stream().collect(HashSet::new, HashSet::add, Object::toString);
        System.out.println(s);
    }
}
我知道这是产生错误的一行:

Set<String> s = objs.stream().collect(HashSet::new, HashSet::add, Object::toString);
Set s=objs.stream().collect(HashSet::new,HashSet::add,Object::toString);
不确定是否相关,但我正在使用:

  • 日食开普勒4.3.2
  • 插件:支持Java 8的Eclipse Java开发工具补丁(针对开普勒SR2)和支持Java 8的Eclipse插件开发环境补丁(针对开普勒SR2)

  • java.runtime.version=1.8.0-b132

以下是截图:

我知道collect方法不正确,但为什么没有编译器错误,比如:

- The method collect(Supplier<R>, BiConsumer<R,? super Object>, BiConsumer<R,R>) in the type Stream<Object> is not applicable for the arguments etc.
-类型流中的方法collect(Supplier、BiConsumer、BiConsumer)不适用于参数等。

这看起来像是Eclipse bug的复制品。这将在Eclipse4.4Luna M7中修复。

很可能这只是一个Eclipse bug。我认为你最好向Eclipse项目提交一个bug,而不是在这里问这个问题因为Arrays.asList创建了一个不可变的列表。@ElliottFrisch同样的问题:(。为什么创建一个非固定大小的列表会改变这一点?@user2336315显然这不重要。这是一个注释。不是答案。我明白了。谢谢。列出的另一个错误也困扰着我。等待更正吧!
- The method collect(Supplier<R>, BiConsumer<R,? super Object>, BiConsumer<R,R>) in the type Stream<Object> is not applicable for the arguments etc.