质量推广提醒 - JDK 25:‘new File(“”)’的一致行为
💡
原文英文,约500词,阅读约需2分钟。
📝
内容提要
OpenJDK质量小组正在推广使用OpenJDK构建测试FOSS项目,以提高发布质量。JDK 24及之前版本中,new File("")的行为不一致,导致文件存在性检查出错。JDK 25修复了这一问题,确保new File("")正确表示当前用户目录。建议进行测试以确保与JDK 25的兼容性。
🎯
关键要点
- OpenJDK质量小组正在推广使用OpenJDK构建测试FOSS项目,以提高发布质量。
- JDK 24及之前版本中,new File("")的行为不一致,导致文件存在性检查出错。
- JDK 25修复了这一问题,确保new File("")正确表示当前用户目录。
- 新API java.nio.file避免了这一问题,Path.of("")和Path.of("").toAbsolutePath()都表示当前用户目录。
- JDK 25的Javadoc更新了File的行为说明,空抽象路径名等同于访问当前用户目录。
- 依赖旧行为的代码常见于单元测试或用户输入映射,可能导致文件相关参数或配置的错误行为。
- 修复此类代码相对简单,但识别可能较难,建议使用全面的测试套件。
- 对于依赖和工具,建议依赖其测试和关于JDK 25兼容性的声明。
➡️