使用IntelliJ远程调试Quarkus时如何跳过步进_SubClass$$function$$类
解决IntelliJ远程调试Quarkus项目无法完全跳过自动生成代理类的问题
问题根因
之前配置的*_Subclass匹配规则仅能匹配后缀为_Subclass的类,无法匹配后缀追加了$$function$$等动态生成标识的类,所以会出现仍有代理类无法跳过的情况,典型未匹配栈条目如下:<init>:49, BusinessPartnerLogicImpl_Subclass$$function$$2
修复步骤
- 打开IntelliJ设置页面,进入路径:构建、执行、部署 > 调试器 > 步进 > 不要步进的类
- 在现有规则基础上新增以下匹配规则:
*_Subclass**_SubClass**$$function$$*
- 保存配置后重启当前调试会话,步进操作就会自动跳过所有Quarkus自动生成的无源码代理类。
可选优化
如果仍偶发进入代理类的情况,可在Quarkus项目的application.properties调试配置中添加以下参数,统一代理类后缀方便规则拦截:quarkus.arc.proxy.suffix=__quarkusProxy
修改后同步更新「不要步进的类」规则,新增一条*__quarkusProxy*即可覆盖所有自动生成的代理类。
内容的提问来源于stack exchange,提问作者JPS
相关产品推荐
相关产品推荐

