eclipse magic:...语法错误,只有当源级别为1.5或更高时,varargs才可用

时间:2009-11-15 05:54:14

标签: java eclipse

昨天我在eclipse中创建了一个项目,它正在工作,编译。我使用Eclipse Galileo for Java EE。今天我打开eclipse并看到很多错误,说这些东西不可用,并且仅在源级别为1.5时才可用。

怎么办?

11 个答案:

答案 0 :(得分:104)

检查是否有效:

  1. 转到您的项目Properties
  2. 在“属性”对话框中,选择左侧树中的Java Compiler节点。
  3. 最后将Compiler compliance level设置为1.5或更高。
  4. 重建项目。

答案 1 :(得分:3)

确保Java>已安装的JRE具有jre6而不是jdk1.6.0

Eclipse似乎检测到jdk6不是jre 1.5 +

答案 2 :(得分:2)

单一答案无法解决我的问题所以我使用了两者:

  • 首先右键单击“问题”选项卡中的错误
  • 点击快速修复
  • 确定
  • 右键点击项目
  • 构建路径
  • 配置构建路径
  • 删除JRE库
  • 添加JRE库

.... tada ...完成......:)

答案 3 :(得分:1)

另请参阅:Eclipse: Syntax Error, parameterized types are only if source level is 1.5

(我知道,我知道,这个问题已经过了一年,但另一个问题在Jeff的回答中包含了一些额外的信息。)

答案 4 :(得分:1)

如果您的JDK已经达到或超过1.5,请尝试将JDK合规性更改为其他内容,让它构建,然后再返回。

  1. 打开Preferences (窗口 - >偏好设置)
  2. 导航至Java -> Compiler
  3. Compiler compliance level更改为其他值
  4. 点击Apply并允许eclipse重建
  5. 重复步骤3& 4,期望Compiler compliance level

答案 5 :(得分:0)

和GWT有趣的事情。即使我使用的是java 6,它也会让我误以为源级别应为5或更高。

单击错误,使用eclipse的自动更正,将合规级别更改为5,解决了问题。

答案 6 :(得分:0)

  1. 打开窗口|偏好。
  2. Java |编译器。
  3. 将编译器合规性级别更改为其他值。
  4. 点击申请,允许eclipse建立。
  5. 将编译器合规性级别更改为所需的Java级别。

答案 7 :(得分:0)

试试这个:

转到项目的属性,将Java Compiler合规性级别设置为1.6,让它重建项目,然后切换回1.7并重新生成它。

它对我有用:)

答案 8 :(得分:0)

也许你的项目缺少一些必要的罐子。试试这个:

  • 右键单击您的项目>>构建路径>>选择库>>添加jar 在项目中添加必要的jar。
  • 转到项目的属性,将Java Compiler合规性级别设置为1.6或更高。
  • 转到项目的属性,设置项目构面。制作' java'用于匹配Java编译器合规性级别的选项,例如' 1.6'。

答案 9 :(得分:0)

我有同样的问题。对我来说,我的项目编译器设置是从我的工作区配置设置导入的,设置为1.8 ...

我尝试切换编译器级别并重建,但没有运气。但是,诀窍是:

在您的文件系统上

  1. 导航到您的项目。

  2. 删除 .settings 文件夹。

  3. 删除 .project 文件

  4. 在Eclipse中:

    1. 从工作区中删除项目 - 确保不检查"删除磁盘上的项目内容..."复选框

    2. 导入项目并允许其构建

答案 10 :(得分:0)

在Centos 7上安装Eclipse之后,我遇到了同样的问题。

但是,就我而言,更改编译器合规性级别并不能解决问题。

为解决此问题,我更改了 Eclipse Installed JREs Window-> Preferences-> Java-> Installed JREs path /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64 到/usr/lib/jdk1.8.0_121-linux-x64上的Oracle JDK

更改之后,问题就消失了。