Java eclipse中的OpenJDK1.7:源代码级别低于1.7时不允许使用运算符
Eclipse给了我一个错误:Java eclipse中的OpenJDK1.7:源代码级别低于1.7时不允许使用运算符,java,eclipse,windows-runtime,openjdk,Java,Eclipse,Windows Runtime,Openjdk,Eclipse给了我一个错误: '<>' operator is not allowed for source level below 1.7 “”运算符不允许用于低于1.7的源级别 我想这是因为它没有使用Java1.7。但事实并非如此。至少openjdk 1.7(我的操作系统是OpenSuse 12.3) 我从开普勒切换回朱诺,以减少一些滞后,并试图找出这个错误,以及,到目前为止没有任何效果 我尝试过的一些事情: -eclipse的默认运行时是opensdk 1.7(在“帮助
'<>' operator is not allowed for source level below 1.7
“”运算符不允许用于低于1.7的源级别
我想这是因为它没有使用Java1.7。但事实并非如此。至少openjdk 1.7(我的操作系统是OpenSuse 12.3)
我从开普勒切换回朱诺,以减少一些滞后,并试图找出这个错误,以及,到目前为止没有任何效果
我尝试过的一些事情:
-eclipse的默认运行时是opensdk 1.7(在“帮助”、“关于”、“安装详细信息”中这样说)
-项目属性,java构建->库。我已经手动添加了opensdk位置
我会安装oracle版本,但opensuse存储库中只有1.6可用。我已经试过安装oracle提供的rpm,但它并没有进入我的路径,并且把一切都搞砸了,所以我再次删除了它
它也应该和openjdk一起工作不是吗?或者你认为它有bug
ps:junit也没有被识别,所以我手动链接到jar文件。这可能是相关信息。在项目的首选项中,必须将编译器
--source
选项设置为1.7
,将--target
选项设置为1.7
。有专门的选项框
右键单击项目。选择属性。选择左边的Java编译器。选择
1.7
作为编译器符合性级别。如果下面的两个下拉列表不是1.7
,请取消选中使用默认符合性设置并将其设置为1.7
,右键单击错误,选择快速修复,然后选择将JRE更改为1.7如果要使用以下版本,请使用
Map<String, Integer> map = new HashMap<String, Integer>();
Map Map=newhashmap();
而不是
HashMap<String, Integer> map = new HashMap<>();
HashMap map=newhashmap();
如果您想继续使用Java1.6
,请搜索并替换为空字符串。您将收到编译器警告,但错误应该会消失。我也有同样的问题,但是
-编译器遵从性级别
-生成的.class文件的兼容性
-源兼容性
所有已设置为1.7。
我在所有3个版本上都重新选择了1.7,然后Eclipse检测到了它,要求重新构建并成功构建我的项目。Window->Preferences->Java->Compiler 选择1.7并点击OK
如果是自动生成,则需要完全重新生成。右键单击项目。选择属性。选择左边的Java编译器。选择1.7作为编译器符合性级别。如果下面的两个下拉列表不是1.7,请取消选中使用默认符合性设置并将其设置为1.7。右键单击项目-属性-Java编译器-编译器符合性-设置级别1.7我重新安装了oracle jdk。在preferences->JRE环境中,我手动添加了jde的路径,然后在preferences->compiler->中,我确实更改了遵从性级别(我认为这是缺失的)。非常感谢!我正在使用“PlayHaven Android SDK”。。。这样做给了我新的问题。。。Android要求编译器符合5.0或6.0级的要求。改为找到“1.7”。请使用Android工具>修复项目属性。仍然在想他们是如何编译的这个答案对我很有用,但我必须执行另外一个步骤:在重建之前清理项目!对大多数人来说,这可能是一个不需要动脑筋的问题,但我认为,如果一些人和我一样,这可以为他们节省额外的几分钟时间。我在清理之前尝试过构建,但仍然出现上述错误。我正在使用v23工具-仍然可以看到这种行为。对我来说,我意识到这是因为新消息被添加到LogCat中,即使它们被过滤掉了。每当adb logcat收到一条新消息时,我的滚动区域就会跳到底部,尽管它不会显示消息,因为它们已被过滤掉。@jeet.chanchawat您找到解决该问题的方法了吗?谢谢,谢谢,谢谢。在尝试了很多最终让我无人着陆的选项后,这一次成功地拯救了我,在一次或两次点击中删除了数百个错误。这并没有给现有的(已接受的)添加任何新的内容。