zl程序教程

您现在的位置是:首页 >  后端

当前栏目

IDEA崩溃:A fatal error has been detected by the Java Runtime Environment解决方案

JAVAIDEA解决方案 Error The by has 崩溃
2023-09-27 14:28:49 时间

最近在使用IDEA时,打开项目莫名其妙的就崩溃了,重启了电脑,重启了IDEA依然无效。

仔细回顾这两天做了什么操作,除了从GitHub上clone了一个项目,并用IDEA打开过该项目之外,并无其他操作。

于是只好分析错误日志,IDEA每次崩溃都会在特定的目录下生成一个错误日志,崩溃的时候也会弹框显示错误原因。崩溃日志可在Help->Edit Custom VM Options中进行查看:

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
-Xbootclasspath/a:../lib/boot.jar

我这里找到的IDEA崩溃信息如下:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (safepoint.cpp:917), pid=2771, tid=138023
#  fatal error: Illegal threadstate encountered: 4
#
# JRE version: OpenJDK Runtime Environment (11.0.6+8) (build 11.0.6+8-b765.25)
# Java VM: OpenJDK 64-Bit Server VM (11.0.6+8-b765.25, mixed mode, tiered, compressed oops, concurrent mark sweep gc, bsd-amd64)
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

很奇怪的错误描述,明明用的Java 8,为什么描述信息中显示的是OpenJDK 11呢?检查了所有的项目,把项目所使用的JDK均修改为Java 8,但依旧崩溃~真有点冰块。

后来想到,是不是在构建项目的时候用了其他版本的JDK?于是在Preferences中逐项查找,还真找到了与日志中一直的JDK版本。

对应路径为:Build->Build Tools->Maven->importing。

JDK for importer

在上述路径的配置项中有一项:JDK for importer,可以看出,这里使用了java 11.0.6+8。基本确定是这里导致了崩溃。于是,将其修改为Java 8,重启IDEA,问题得到解决。

博主简介:《SpringBoot技术内幕》技术图书作者,酷爱钻研技术,写技术干货文章。

公众号:「程序新视界」,博主的公众号,欢迎关注~

技术交流:请联系博主微信号:zhuan2quan


微信公众号:程序新视界

程序新视界”,一个100%技术干货的公众号