gpt4 book ai didi

java - Eclipse 内部编译器错误

转载 作者:行者123 更新时间:2023-11-30 09:09:01 26 4
gpt4 key购买 nike

在 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);
}
}

我得到:

Internal compiler error: java.lang.ArrayIndexOutOfBoundsException: 0 at 
org.eclipse.jdt.internal.compiler.lookup.ConstraintExpressionFormula.reduceReferenceExpressionCompatibility(ConstraintExpressionFormula
.java:273)

我知道这是产生错误的这一行:

Set<String> s = objs.stream().collect(HashSet::new, HashSet::add, Object::toString);

不确定它是否相关,但我正在使用:

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

  • java.runtime.version=1.8.0-b132

截图如下:

enter image description here

我知道 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.

最佳答案

这看起来像 Eclipse 错误 433085错误的副本 430766 .这将在 Eclipse 4.4 Luna M7 中得到修复。

关于java - Eclipse 内部编译器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23250358/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com