java: java.lang.ExceptionInInitializerError
Unable to make field private com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors com.sun.tools.javac.processing.JavacProcessingEnvironment.discoveredProcs accessible: module jdk.compiler does not "opens com.sun.tools.javac.processing" to unnamed module @5e4ff3e5
java: java.lang.ExceptionInInitializerError
万能解决方案,新建项目,拷贝程序
我之前遇到过,换了jdk版本,好了
<druid.version>版本号</druid.version>
升级一下druid版本
解决出现 java.lang.ExceptionInInitializerError错误问题
今天启动一个项目... 在启动的时候报错... 查了半天错误信息 一直是说hibernate缓存管理出错..
最后查看启动时候的log 发现在程序中报Java.lang.ExceptionInInitializerError
查看原因 最后是因为自己修改了静态常量是系统启动的时候自动获取properties值 结果获取错误 导致其在代码编译的时候造成出错
错误代码:
public
static
final
String message = getMessage(
"ok_oj"
);
原因分析:
message是一个静态常量. 在系统编译此类的时候 首先会加载静态常量 存放到 内存静态域之中.
但是因为在启动的时候getMessage返回一个null 使其导致报错java.lang.ExceptionInInitializerError