如何解决Java 23预览特性JEP 468(派生记录创建)编译失败问题?
解决JEP 468(派生记录创建)编译错误的方案
你的编译错误根源是预览特性未被正确启用,导致编译器无法识别with关键字的派生记录语法。以下是具体解决步骤:
1. 修正编译命令参数顺序
将--enable-preview参数放在--release之前,部分JDK版本要求此顺序才能正确激活预览特性:
javac --enable-preview --release 23 .\src\Main.java
2. 直接使用源码启动器运行(推荐)
跳过单独编译步骤,用Java源码启动器直接运行代码,自动处理预览特性启用:
java --enable-preview .\src\Main.java
3. 运行编译后的类文件
如果已成功编译,运行时必须同样添加--enable-preview参数:
java --enable-preview Main
验证成功输出
当配置正确时,代码执行会输出:
Point created at (1, 2) Point created at (0, 2) New point: Point[x=0, y=2]
额外确认项
- 确保使用的是JDK 23正式版本,JEP 468作为预览特性仅在该版本中提供
- 检查PATH环境变量,确认指向的是JDK 23的
bin目录,避免与其他JDK版本冲突
内容的提问来源于stack exchange,提问作者xtay2
相关产品推荐
相关产品推荐

