Java 25 在 RHEL 9.7 上的已弃用 API 警告
升级到 RHEL 9.7 上的 Java 25 后,IronPDF for Java 会记录引用内部 Java API 的已弃用 API 警告,例如 sun.misc.Unsafe::allocateMemory。 PDF 生成保持正常工作; 这些警告是信息性的,但在受监管环境中可能会引发合规问题。
这些警告来自 IronPDF 内部使用的 gRPC/Netty 传输库,而非 IronPDF 自身的代码。 这些库仍调用 sun.misc.Unsafe 来进行直接内存访问。 Java 23 已弃用了用于移除的 sun.misc.Unsafe 内存访问方法(JEP 471),而 Java 24 及以后在使用时会发出警告(JEP 498),这就是现在警告显现的原因。
解决方案
1. 确认警告不会阻碍运行
在更改任何内容之前,检查渲染是否仍然成功。 这些消息是警告而不是错误,并未观察到运行时问题。 PDF 生成功能如预期般运行,因此您是在清除噪音,而不是修复故障。
2. 将访问标志添加到您的 JVM 启动参数中
启动应用程序时传递这些选项,以便 JVM 打开传输库所需的内部包:
--enable-native-access=ALL-UNNAMED
--sun-misc-unsafe-memory-access=allow
--enable-native-access=ALL-UNNAMED
--sun-misc-unsafe-memory-access=allow
第一个标志允许未命名模块的本地访问; 第二个则重新启用 gRPC/Netty 栈所依赖的 sun.misc.Unsafe 内存 API。 两者都不改变 IronPDF 的行为; 它们一起抑制了弃用警告。


