【问题标题】:openjdk 1.7 in eclipse: operator is not allowed for source level below 1.7eclipse中的openjdk 1.7:1.7以下的源级别不允许使用运算符
【发布时间】:2013-10-15 13:23:02
【问题描述】:

Eclipse 给我一个错误:

'<>' operator is not allowed for source level below 1.7 

我猜这是因为它没有使用 java 1.7。除了它是。至少 openjdk 1.7(我的操作系统是 OpenSuse 12.3)。

我从开普勒切换回朱诺以减少一些滞后并尝试找出这个错误,但到目前为止无济于事。

我尝试过的一些事情: - Eclipse 的默认运行时是 opensdk 1.7(在帮助、关于、安装细节中这样说) - 项目属性,java 构建 -> 库。我已经手动添加了 opensdk 位置。

我会安装 oracle 版本,但 opensuse 存储库中只有 1.6 可用。我已经尝试安装 oracle 提供的 rpm,它并没有把自己放在我的路径中并且有点搞砸了一切,所以我再次删除了它。

它应该也可以与 openjdk 一起使用,不是吗?还是您认为它有错误?

ps:junit也没有被识别,所以我手动链接到jar文件。也许这是相关信息。

【问题讨论】:

    标签: java eclipse windows-runtime openjdk


    【解决方案1】:

    在您的项目首选项中,您必须将编译器--source 选项设置为1.7,并将--target 选项设置为1.7。有专门的选项框。

    右键单击项目。选择属性。选择左侧的Java 编译器。为编译器合规级别选择1.7。如果下面的 2 个下拉菜单不是 1.7,请取消选中使用默认合规性设置,并将它们设置为 1.7

    【讨论】:

    • 我重新安装了oracle jdk。在首选项-> JRE 环境中,我手动添加了 jde 的路径,然后在首选项-> 编译器-> 中我确实更改了合规级别(我认为这是缺失的)。非常感谢!
    • 我正在使用“PlayHaven Android SDK”...这样做给我带来了新问题...Android 需要编译器合规级别 5.0 或 6.0。而是找到了“1.7”。请使用 Android 工具 > 修复项目属性。仍然想知道他们是如何编译它的。 :O
    • 这个答案对我有用,但我必须执行一个额外的步骤:在重建之前清理你的项目!这对大多数人来说可能是没有道理的,但我认为如果他们像我一样,它可以为一些人节省几分钟的额外时间。我在清理之前尝试构建,但仍然出现上述错误。
    • 我正在使用 v23 的工具 - 仍然看到这种行为。对我来说,我意识到这是因为新消息被添加到 LogCat,即使它们被过滤掉了。每当 adb logcat 收到一条新消息时,我的滚动区域就会跳到底部,即使它没有显示这些消息,因为它们被过滤掉了。
    • @jeet.chanchawat 你找到解决这个问题的方法了吗?
    【解决方案2】:

    右键单击错误,选择快速修复,然后选择将 JRE 更改为 1.7

    【讨论】:

    • 谢谢,谢谢,谢谢。在尝试了许多最终导致我陷入无人区的选项之后,这最终救了我,一两次点击就消除了数百个错误。
    【解决方案3】:

    如果要使用以下版本,请使用

    Map<String, Integer> map = new HashMap<String, Integer>();
    

    而不是

    HashMap<String, Integer> map = new HashMap<>();
    

    【讨论】:

      【解决方案4】:

      右键Project-properties-Java Complier-Compiler compliance-set level 1.7

      【讨论】:

      • 这不会向现有(已接受)answer 添加任何新内容。
      【解决方案5】:

      如果您想坚持使用java 1.6,请搜索并将 替换为空字符串。您会收到编译器警告,但错误应该会消失。

      【讨论】:

        【解决方案6】:

        我遇到了同样的问题,但是 - 编译器合规级别 - 生成的 .class 文件兼容性 - 源兼容性 都已经设置为 1.7。 我在所有 3 上重新选择了 1.7,然后 Eclipse 检测到它,要求重新构建并成功构建我的项目。

        【讨论】:

          【解决方案7】:

          窗口->首选项->Java->编译器

          选择 1.7 并点击 OK。

          如果您是自动构建,则需要完全重新构建。

          【讨论】:

            【解决方案8】:

            右键单击项目。选择属性。选择左侧的 Java 编译器。为 Compiler Compliance 级别选择 1.7。如果下面的 2 个下拉菜单不是 1.7,请取消选中使用默认合规性设置并将其设置为 1.7。

            【讨论】:

              猜你喜欢
              • 2021-11-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2020-09-20
              • 2014-03-06
              • 1970-01-01
              相关资源
              最近更新 更多