【问题标题】:Eclipse: false error with jdk7Eclipse:jdk7 出现错误错误
【发布时间】:2014-03-13 18:55:10
【问题描述】:

我一直遇到 eclipse 的问题,这让我很紧张。每当我开始一个新的 Java 项目时,一切都顺利而完美,直到我“清理”项目(Project -> Clean...)并且一切都转到@#~%&... 我不断得到:

  • XYZ cannot be resolved to a type
  • Multi-catch parameters are not allowed for source level below 1.7
  • <> operator is not allowed for source level below 1.7

这很好,只是我正在导入所有必需的类,而且我从开始就有 1.7。这是我安装的唯一版本。在过去的几天里,我已经尝试过this 和其他类似的回复,但无济于事。
一个解决方案是创建一个新项目,复制并粘贴所有包/类,这工作了一段时间,但我再次将 UMLet 添加到项目中......删除 UMLet 插件对我没有任何帮助。

顺便说一句,即使有“错误”,我的项目运行也没有任何问题,因此我知道它们不是真实的。我可以继续工作,但是,我看不到真正的错误何时出现...... 有没有人有最终解决方案来摆脱这个错误的错误?

编辑: 我忘了提到我正在与 Kepler 合作。

编辑 2:

这里是带有请求信息的屏幕截图。

【问题讨论】:

  • 您是否检查过项目或 Eclipse 的源代码合规级别?首选项 -> Java -> 编译器
  • 是的。一切都在 1.7 上
  • 项目的 属性、Java 构建路径 部分、 选项卡中,那里列出了什么JRE System Library?在Java Compiler 部分中,JDK 合规性 设置为什么?
  • 刚刚编辑了我的问题,添加了显示请求信息的屏幕截图。

标签: eclipse compiler-errors java-7


【解决方案1】:

您可以通过如下在 Eclipse 中设置正确的 JRE 环境来解决此问题。

  1. 转到Project => Properties => Java Build Path
  2. 点击Libraries
  3. 选择JRE System Library
  4. 点击右侧的编辑按钮
  5. Execution Environment 设置为Jave SE-1.7(jre7)
  6. 清理项目或刷新项目。

【讨论】:

    【解决方案2】:

    一个解决方案是创建一个新项目,复制并粘贴所有包/类,这工作了一段时间,但我再次将 UMLet 添加到项目中......

    一种可能性是 UMLet 插件是您的问题的原因。尝试在没有 UMLet 的情况下进行干净的 Eclipse 安装。 (卸载 UMLet 插件并不能解决问题的事实绝不是决定性的。)

    请注意,UMLet 将作为独立工具运行。

    顺便说一句,即使出现“错误”,我的项目运行也没有任何问题,因此我知道它们不是真实的。

    对此的可能解释是编译错误来自 Eclipse 中内置的增量 Java 编译器。使用不同的编译器(即来自您安装/配置的 JDK 的编译器)来生成“.class”文件。

    【讨论】:

      【解决方案3】:

      1.7以下的源级别不允许使用多捕获参数

      不是解决这个问题的方法,但如果你想有两个例外,你可以这样编码:

      try {
          // code here
      } catch {
          // code here
      } catch {
          // code here
      }
      

      它对我有用,而不是捕获 (exception1 | exception2 e)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-06-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-27
        • 2017-07-21
        • 1970-01-01
        相关资源
        最近更新 更多