如何在Eclipse中过滤调试,仅调试自定义Java类?
嘿,这个需求简直是调试时的刚需!谁想一步步跳进数据库驱动、ORM框架这些第三方库的代码里浪费时间啊😅,下面给你两种靠谱的配置方式,按需选择:
方法1:给单个调试启动项精准设置过滤
如果你只想针对某个特定的调试任务(比如某个Java主类、某个Web应用)生效,用这个方法:
- 打开Eclipse的Run > Debug Configurations(或者右键你要调试的类/项目,选
Debug As > Debug Configurations) - 在左侧列表里找到对应的调试配置(比如
Java Application下你常用的那个),选中它 - 切换到Source标签页:
- 先点击右侧的Add,把你自己的源代码文件夹(比如
src/main/java下的自定义包路径)添加进来,最好把这些源移到列表最顶部(用右侧的上下箭头调整) - 接着点击Filter按钮,弹出过滤设置窗口:
- 点击Add Filter,输入要排除的数据库相关第三方包名,比如
com.mysql.cj.*、org.hibernate.*、com.alibaba.druid.*,用通配符*匹配整个包下的所有类 - 要是想直接“只调试自己的类”,可以勾选Use filters specified below,然后添加你自己的包名(比如
com.yourcompany.yourproject.*),再勾选Exclude all without matching patterns——这样就只会包含你指定的包,其他所有类都会被排除
- 点击Add Filter,输入要排除的数据库相关第三方包名,比如
- 先点击右侧的Add,把你自己的源代码文件夹(比如
- 点击Apply保存配置,启动调试就不会跳进第三方库代码里了
方法2:全局步骤过滤器,一次设置全生效
如果希望所有调试任务都自动跳过第三方库,用这个全局配置更省心:
- 打开Eclipse的Window > Preferences(Mac系统是
Eclipse > Preferences) - 展开Java > Debug > Step Filters
- 先勾选Use step filters,然后在下面的列表里操作:
- 可以直接勾选默认提供的过滤项,比如
java.*、javax.*这些JDK自带的核心类 - 点击Add按钮,手动添加数据库相关的第三方包,比如
com.mysql.*、org.mybatis.*这类,按需补充 - 要是想彻底只调试自己的类,点击Add Specific Package,输入你的自定义包名,然后勾选Filter out all packages except selected ones——这样调试时按F5/F6/F7,只会进入你自己包下的类
- 可以直接勾选默认提供的过滤项,比如
- 点击Apply and Close,之后所有调试都会自动跳过过滤掉的类
小技巧
如果调试时不小心跳进了第三方类,不用一步步退,直接在Debug视图的调用栈里右键点击你自己的类,选择Drop to Frame,就能直接跳回自己的代码继续调试啦!
内容的提问来源于stack exchange,提问作者Tiago Rocha
相关产品推荐
相关产品推荐

