码迷,mamicode.com
首页 > 编程语言 > 详细

升级到JDK8,编译时发生 Error:java: java.lang.ExceptionInInitializerError

时间:2017-06-14 13:06:06      阅读:333      评论:0      收藏:0      [点我收藏+]

标签:lombok   解决   兼容问题   arch   cin   except   uil   项目   font   

技术分享

编译的时候出现这个问题。使用1.7的jdk没问题,但是由于po主的项目中,使用了java8编写的代码,解决java8兼容问题成为解决这个问题的首选方案。

这个日志太过简单,只告知一个异常信息,这个异常发生的原因主要是由于静态类,静态变量初始化时发生了异常,po的项目是个很早的项目,静态类太多,无法直接定位异常信息到底是如何产生,控制台也没有输出堆栈,这给排查问题带来了极大的不便,第一个要解决的应该就是讲详细的堆栈信息输出,能方便的定位到问题的根源。

注意到第三条Infomation,Compliation completed with 1 error..... 这说明,异常产生时是在编译阶段,先去看看Idea的build的日志。日志的目录在 

/Users/xxxx/Library/Logs/IdeaIC2016.1/build-log

打开bulid.log,可以看到具体的异常的堆栈信息。

技术分享

 

从堆栈的信息来看,lombok.javac.Javac.getCtcInt 应该是出现了类冲突的问题,这个类应该是IDEA的自有类发生的异常,是IDEA的Bug.

然后万能的google下后,

https://intellij-support.jetbrains.com/hc/en-us/community/posts/205434150-IDEA-2016-3-compile-error-please-help-

这个同学发生了相同的问题,检查了下我的IDEA的版本,这位同学的IDEA版本是 2016.3。po下我的:

IntelliJ IDEA 2016.1.1

Build #IC-145.597, built on March 29, 2016
JRE: 1.8.0_40-release-b132 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

版本还比较这位同学的要旧一些,所以!先升级一下IDEA吧!升级去了,待会来po是不是已经解决!

 

升级到JDK8,编译时发生 Error:java: java.lang.ExceptionInInitializerError

标签:lombok   解决   兼容问题   arch   cin   except   uil   项目   font   

原文地址:http://www.cnblogs.com/zhoukedou/p/7007972.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!