有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

内置Eclipse期间的Java 8堆栈溢出

我正在将一个web应用迁移到Java8。我可以在Eclipse之外构建项目,没有任何问题,但是我在ide中看到了奇怪的错误。首先,应用程序中使用的一些项目(25个项目中有4个)显示了毫无意义的错误。对于实现集合接口的任何对象,我看到一个错误,它说“类型X不是泛型的;它不能用参数<;sometype>;参数化”比如说,

error

它是一个java。util。收集对于死者类型,我也会得到同样的错误。。。。如。。地图、树、阵列列表。。。等等

此外,当我做项目时->;在构建这些项目时,Eclipse抛出StackOverflow错误。这是日志中的跟踪:

!ENTRY org.eclipse.core.jobs 4 2 2015-12-09 15:50:54.309
!MESSAGE An internal error occurred during: "Build Project".
!STACK 0
java.lang.StackOverflowError
at     org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)
at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.substituteInferenceVariable(ParameterizedTypeBinding.java:856)

。 . . 重复

我在两个不同的Eclipse环境中看到了这些错误。STS 3.6.2和Mars 4.5.1。有人知道这是怎么回事吗


共 (1) 个答案

  1. # 1 楼答案

    在有问题的项目上,听起来像是配置了一个旧的JRE系统库和我们的法规遵从性级别,而不是Java 8。打开项目属性,转到Java构建路径,检查JRE系统库设置为什么;应该是J2SE-1.8