Spring Boot 调试启动失败:解决“java.lang.instrument ASSERTION FAILED”错误
在Spring Boot项目调试过程中,您可能会遇到如下错误:
java.lang.instrument assertion failed : "!erroroutstanding" with message transform method call failed at jplisagent.c line: 844 java.lang.instrument assertion failed : "!erroroutstanding" with message transform method call failed at jplisagent.c line: 844
排除断点问题后,该错误通常与JaCoCo代码覆盖率工具冲突有关。 以下步骤可以有效解决此问题:
-
创建配置文件: 在项目根目录下创建一个名为 jacoco.args 的文件。
-
添加配置项: 在 jacoco.args 文件中添加以下内容,禁用JaCoCo代理:
-djacoco-agent.skip=true
- 保存并重新构建: 保存 jacoco.args 文件后,重新编译并运行您的Spring Boot项目。 可以使用Maven命令:
mvn clean install mvn spring-boot:run
重要提示:
- jacoco.args 文件仅在调试模式下生效。 正常运行模式下无需此文件。
- 如果您使用的是Gradle构建工具,请参考Spring Boot Gradle插件文档寻找相应的解决方案,方法可能略有不同。 通常需要在Gradle的构建脚本中配置JaCoCo。
通过以上步骤,您应该能够成功解决 "java.lang.instrument ASSERTION FAILED" 错误,并顺利进行Spring Boot项目的调试。