(本文仅供参考)

问题

仪表盘打开报错,提示:Could not initialize class org.apache.arrow.memory.util.MemoryUtil,同时日志里还会提示:

Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.RuntimeException: Failed to initialize MemoryUtil. You must start Java with `--add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED` (See https://arrow.apache.org/docs/java/install.html),之前是正常的。

原因

开启了V2.0引擎,且jdk版本是9及以上,因jdk9+版本对权限控制严格,不允许外部模块访问,导致加载不到对应类报错。

解决方案

添加jvm参数:--add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED 解决。

jvm参数配置参考地址:应用服务器配置建议(JVM参数)