You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改IntelliJ Spring Boot远程调试参数解决WSL2环境调试卡住问题

IntelliJ Spring Boot运行配置默认调试JVM参数修改方法

在IntelliJ中调试类型为"Spring Boot"的运行配置时,JVM启动时默认携带如下命令行参数:
-agentlib:jdwp=transport=dt_socket,address=*:12345,suspend=y,server=y

问题详情

在IntelliJ和WSL2环境中运行基于Maven的Spring Boot应用,尝试调试Spring Boot类型的运行配置时,JVM始终卡在Listening for transport dt_socket at address: 12345这一行,该问题由WSL2运行在虚拟机中、IntelliJ运行在Windows系统的环境差异导致。

临时解决方案是在JVM选项中添加修改后的-agentlib命令行参数,启动运行配置后再手动挂载调试器,仅将参数中的address=*:12345修改为address=12345即可。该修改会让调试代理监听localhost:12345,调试器也会连接该地址,由于Windows和WSL2默认共享localhost,因此该方案可以正常生效。

解决方案来源

通过查看IntelliJ运行应用时实际使用的命令行参数发现,不同项目的默认参数存在差异,部分项目默认是address=*:12345,部分则是address=12345,因此可以通过修改该参数解决问题。

2021-09-18 18:45 更新

经过排查,问题实际与IPv6和IPv4的协议差异有关,上述临时方案会让JVM监听127.0.0.1:12345,而未修改参数时JVM默认使用IPv6地址。
调试参数配置示意图

2021-09-19 14:00 更新

目前可以采用更简便的解决方案:在命令行参数中添加-Djava.net.preferIPv4Stack=true即可让JVM优先使用IPv4协议,注意不要混淆preferIPv4Stack和preferIPv6Stack两个参数。

内容的提问来源于stack exchange,提问作者Yevgeniy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 05:21:01