我今天在我的PC上启动了windows 10上的eclipse (Version: 2022-06 (4.24.0) Build id: 20220609-1112)程序。由于一些眼部手术,我的视力相当差,但它似乎启动屏幕是不同的。
似乎我编辑的每个源文件(以及创建的新类)都会导致:"在无效的源代码版本级别17上启用预览特性,只能在源代码级别18上启用预览。清理,打开和关闭项目没有帮助。Java编译器选项全部设置为17。打开另一个项目并编辑源文件会导致相同的错误。
bin/中不生成类文件。Gradle测试运行良好。Gradle有一个警告:"warning: [removal] JApplet in javax。Swing已弃用并被标记为要删除。">
打开一个新项目似乎工作正常。
克隆repo会在第一个源文件上得到相同的错误。编辑源文件会得到错误。在编辑而不是之后执行git reset—hard修复错误。
编辑1:在eclipse中创建一个新项目,并将源代码(sans git)复制到其中。到目前为止,大多数方法似乎都有效。新项目有一个特定的类路径条目:org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/javascript -17,原来的有:
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
<attributes>
<attribute name="module" value="true"/>
</attributes>
EclipseJava IDE,或者更准确地说是Eclipse JDT,支持多个Java版本,但预览功能的最新Java版本只有。这意味着,在Eclipse 2022-06(4.24.0)中,预览功能仅适用于Java 18。
预览功能不应该在生产环境中使用,它的存在是为了更容易地尝试未来的更改。但是随着Java 18的发布,Java 17的预览特性变成了对已经过去的未来的预览。
还请记住,Eclipse有自己的增量Java编译器,并且决定仅在Eclipse中支持最新Java版本的预览功能。