IntelliJ IDEA调试模式报kotlinx.coroutines.debug.AgentPremain类找不到
解决IntelliJ IDEA调试Spring Boot项目时找不到kotlinx.coroutines.debug.AgentPremain的问题
环境信息
- IDE:IntelliJ IDEA 2022.3.1(旗舰版)Build #IU-223.8214.52
- JVM:JetBrains OpenJDK 17.0.5+1-b653.23 aarch64
- 设备:Apple M1 Pro MacBook Pro
- 系统:MacOS 13.1 (22C65)
- 项目:无Kotlin依赖的Spring Boot项目,可正常运行,但调试模式启动失败
错误信息
Connected to the target VM, address: '127.0.0.1:59789', transport: 'socket' Exception in thread "main" java.lang.ClassNotFoundException: kotlinx.coroutines.debug.AgentPremain at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:431) at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525) FATAL ERROR in native method: processing of -javaagent failed Disconnected from the target VM, address: '127.0.0.1:59789', transport: 'socket' Process finished with exit code 134 (interrupted by signal 6: SIGABRT)
解决方案
方案1:禁用Kotlin协程调试代理
- 打开IntelliJ IDEA的Settings/Preferences(快捷键:
Cmd+,或Ctrl+,) - 导航到Build, Execution, Deployment > Debugger > Data Views > Kotlin
- 取消勾选Enable coroutine debugging选项
- 重启IDEA后重新启动调试
方案2:移除自动添加的Java代理参数
- 打开项目的Run/Debug Configurations(右上角运行按钮旁的下拉菜单,选择Edit Configurations)
- 选中出现问题的Spring Boot调试配置
- 切换到Environment标签页,查看VM options
- 如果发现类似
-javaagent:/path/to/kotlinx-coroutines-agent.jar的参数,直接删除 - 保存配置后重新启动调试
方案3:更新/重置IDEA配置
- 尝试将IntelliJ IDEA升级到最新稳定版,旧版本可能存在M1架构下的兼容性bug
- 若升级无效,可尝试重置IDEA配置:删除
~/Library/Application Support/JetBrains/IntelliJIdea2022.3(MacOS)目录下的配置文件,重启IDEA后重新导入项目
原因说明
该问题是IntelliJ IDEA的Kotlin调试插件在M1架构Mac环境下的兼容性问题,即使项目无Kotlin依赖,IDEA仍会自动注入Kotlin协程调试代理,但找不到对应的类文件,导致调试启动失败。项目在STS/Eclipse中可正常调试也验证了这是IDEA专属的配置问题。
内容的提问来源于stack exchange,提问作者user19483562
相关产品推荐
相关产品推荐

