人狠话不多,直奔主题:
问题:
IDEA通过JRebel插件启动项目会报错,看我发的帖子:点我直达
就是这个关于A fatal error has been detected by the Java Runtime Environment的报错困扰了我2天。
解决思路
1.JDK版本不对? 改版本问题没解决
2.JDK和tomcat不兼容? 问题还是没解决
.
.
.
.
整个过程比较糟心,此处省略一万字
百度
百度了一大堆,跟我的解决思路相差无几,通通改了一遍就是报错,百度无果,陷入沉思。
换个启动方式
神奇的事情发生了,请看图
启动成功后心中各种草泥马在奔腾,这说明跟JDK和tomcat半毛钱关系都没有,前面的改动浪费了我那么长时间。
确定问题 JRebel
添加配置
JAVA_OPTS
-Dfile.encoding=gbk -Djava.awt.headless=true -Xms2048m -Xmx2048m
总结
如果小伙伴们也是跟我一样的情况不防试试这个方法,不保证帮到每个人,因为每个人的情况不一样,谢谢大家。
时隔四个月,问题复现
不知道什么原因,四个月之后用上面添加配置的方法虽然能解决正常启动项目,但是,jreble热部署并没有实现自动编译,又陷入了沉思,又花费了一天的时间,依然是百度,看到的依然是那些你抄袭我我抄袭你的文章,没什么卵用,然后我发现另一个项目并没有配置【-Dfile.encoding=gbk -Djava.awt.headless=true -Xms2048m -Xmx2048m】却能实现热部署自动编译,对比发现两个项目的JDK不一样,一个是JDK7,一个是JDK8,我也观察到了报错记录中提到了JDK中的jfr.jar这个包出错了,于是我将JDK1.7.0.-05升级到了1.7.0.-80,惊喜的事情出现了,项目启动成功,也实现了热部署自动编译,感觉很欣慰,给自己点个赞。
心得
遇事自己思考,别人的只能做参考,每个人的问题不一样,千人千面。