Java Eclipse:语法错误,仅当源代码级别为1.5时才使用参数化类型
我尝试使用以下代码:Java Eclipse:语法错误,仅当源代码级别为1.5时才使用参数化类型,java,eclipse,Java,Eclipse,我尝试使用以下代码: ArrayList<String> Map<String, String> ArrayList 地图 Eclipse抱怨这两个问题:语法错误,只有在源代码级别为1.5时才使用参数化类型 我使用JDK1.6,但即使我转到编译器并将遵从性切换到1.5。它仍然给我这个错误。知道为什么吗?右键单击您的项目并在属性对话框中选择属性检查Java编译器设置,可能您有不同的工作区设置。我猜想,当您使用JDK 1.6运行eclipse时,它实际上配置了不同的默认j
ArrayList<String>
Map<String, String>
ArrayList
地图
Eclipse抱怨这两个问题:语法错误,只有在源代码级别为1.5时才使用参数化类型
我使用JDK1.6,但即使我转到编译器并将遵从性切换到1.5。它仍然给我这个错误。知道为什么吗?右键单击您的项目并在属性对话框中选择属性检查Java编译器设置,可能您有不同的工作区设置。我猜想,当您使用JDK 1.6运行eclipse时,它实际上配置了不同的默认jre 请参阅
Window->preferences->java->Installed JRE
,并确保选中的JRE是1.6
如果默认的JRE确实是1.6,那么它很可能是一个特定于项目的设置。请查看项目是否配置为使用正确的JRE。是。不管其他人怎么说,Eclipse都包含一些bug,这些bug有时会导致忽略工作区设置(例如1.6兼容)。甚至当每个项目设置被禁用,工作区设置正确(1.6),JRE设置正确,只有1.6 JRE定义,等等,所有这些都是人们在各种论坛上发布关于这个问题的问题时通常推荐的内容(通常是这样)
我们经常不定期地遇到这种情况,通常是在存在与构建时依赖关系或其他项目问题无关的问题时。它似乎属于“无法让Eclipse识别现实”的一般范畴,我总是正确或错误地将其归为使用Eclipse的广泛元数据刷新问题。Eclipse元数据是一种祝福,也是一种诅咒;当一切正常工作时,它会使工具变得非常强大和快速。但是当出现问题时,广泛的缓存使得解决问题比使用其他工具更困难,有时甚至更困难。我在Eclipse Helios中通过右键单击项目,选择“Java构建路径”、“添加库…”、“JRE系统库”、“工作区默认JRE(jdk1.6.017)”来解决这个问题最后是“完成”。也要小心,不要在项目中为Java编译器/遵从性设置继承工作区设置。我有一个导入到Eclipse中的项目。Eclipse使用J2SE1.4JRE、编译器和法规遵从性设置生成了该项目
当我进入并手动更新这些设置并取消选中“启用项目特定设置”框时,我仍然收到与1.5级法规遵从性相关的生成错误(尽管工作区设置显然是1.6)。直到我重新选中“启用特定于项目的设置”框并手动将编译器/符合性级别设置为1.6,错误才消失。当出现此问题时,此解决方法非常有用 1) 将Workspace JRE设置为1.5(并应用/保存)。项目将重建 2) 将Workspace JRE设置回1.6(并应用/保存)。项目将重建
所有的错误都消失了(至少现在是这样)。我在Eclipse Indigo版本中遇到了同样的问题——即使项目设置是正确的。我怀疑的主要原因是工作区是在与实际源文件夹(如user748337所述)不同的文件夹中定义的。
为了解决这个问题,我必须启用特定于项目的设置选项(在项目首选项中),尽管它与工作区设置没有什么不同。可以通过以下方式解决:
另外,单击“使用默认符合性设置”复选框。转到项目属性 然后“Java编译器”->选中该框并“启用特定于项目的设置” 取消选中“在Java上使用执行环境“OSGi/Minimum-1.2”中的法规遵从性”框 然后将编译器符合性级别更改为“1.5”,然后单击“确定”
重新构建它,您的问题就会得到解决。我目前正在使用Eclipse Luna。也有同样的问题。您可能希望验证编译器的符合性设置,请转到“项目/属性/Java编译器” 编译器遵从性级别设置为1.4,我将我的设置为1.5(我正在使用JDK1.8);这对我有用
如果你必须改变设置;转到“Window/Preferences/Java/Compiler”并检查编译器符合性级别是否为1.5或更高可能会很有用。以防您需要执行另一个Java项目。可以通过以下方式解决:
转到项目属性 然后“Java编译器”->选中框(“启用特定于项目的设置”) 将编译器符合性级别更改为“5.0”&单击“确定”
选中“使用默认合规设置”复选框单个答案无法解决我的问题,因此我同时使用了以下两个选项:
- 首先右键单击“问题中的错误”选项卡
- 单击“快速修复”
- 嗯
- 右键单击项目
- 构建路径
- 配置生成路径
- 删除JRE库
- 添加JRE库
将编译器版本更改为较低的值,并应用更改。 编译将失败
现在将版本更新为所需并应用更改,工作区将得到重建,问题将得到解决。这是ECLIPSE的快速修复 当我试图创建数组时