我发现Java 8现在正式发布.似乎我需要Eclipse Luna 4.4才能工作.所以我下载了Luna并安装了它.我还从我的其他Eclipse导入了所有项目,一切都按预期工作.当我想尝试Java 8时,我很快发现我需要先安装它.安装完成后,我设法将JRE 8更改为默认值.
我的问题是:为什么我可以使用新的日期&时间API,但我不能使用新的Lambda表达式?
一些可能有用的信息:
>我正在使用Mac
>我非常确定API的工作时间(即使是小型Java Doc Box也表示它自1.8起)
它是否与我没有安装包含Java 8的Eclipse这一事实有关?
解决方法:
首先,你不需要使用Luna – 有一个feature patch for Kepler工作正常.
其次,Java Compiler对话框的“源兼容性”部分必须是1.8.否则,即使您被允许使用Java 1.8的库功能,您也将无法使用语言功能. (它不仅仅是lambdas – 有方法引用,接口中的静态方法,以及默认方法.)这里是看的地方:
您很少想要使用1.8中的库功能,但保持源/类文件与1.7或更早版本的兼容性,但我想如果您编写需要在各种JRE上运行的代码,它可能会很有用,但您可以拥有一些需要Java 1.8的功能实现,并且不会在早期的JRE上使用.
标签:java,java-8,lambda,eclipse
来源: https://codeday.me/bug/20191005/1856838.html