JEP 472提议限制将来的Java版本中JNI和FFM API的使用,以增强安全性和性能。该提议包括对JNI使用发出警告和调整FFM API。目标是要求开发人员对任何JNI和FFM API的使用进行明确批准。文章解释了JNI使用的风险,如内存损坏和绕过访问检查。提议建议采取分阶段的方法限制JNI的使用,并提供了启用本地访问的选项。文章还提到了一个新工具,jnativescan,用于帮助识别使用JNI的库。过渡到更严格的JNI限制可能需要进行调整,但将有助于构建更安全的Java生态系统。
本周Java回顾包括JEP 472的新闻,该JEP建议在JDK 24中限制JNI的使用;Spring Framework的里程碑和点发布;Piranha Cloud的月度发布;以及Gradle 8.9和Arquillian 1.9的发布。JEP 472已从候选状态晋升为JDK 24的目标状态,该JEP建议限制与JDK 22中提供的Foreign Function & Memory(FFM)API中的受限方法一起使用的不安全的Java Native Interface(JNI)的使用。预计在JDK 23发布后,使用JNI将抛出异常而不是警告。Spring Framework发布了6.2.0的第五个里程碑版本和6.1.11的新版本,修复了一些问题并提供了新功能。Spring Data和Spring Cloud也发布了新版本。Quarkus发布了3.12.2的维护版本。Micrometer发布了1.14.0的里程碑版本和1.13.2、1.12.8的新版本。Project Reactor发布了2024.0.0、2023.0.8、2022.0.21和2020.0.46的新版本。Piranha Cloud发布了24.7.0的新版本。Apache Software Foundation发布了Tomcat 9.0.91和Camel 4.7.0的新版本。Arquillian发布了1.9.0.Final的新版本。Gradle发布了8.9.0的新版本。
完成下面两步后,将自动完成登录并继续当前操作。