最近用vscode开发java比较多,所以找了几款可以快捷跳转的vscode插件
个人选择了如下两个插件: Super Mybatis + Java Code Navigator
1.Java Code Navigator
搜了一圈,结论先说在前面:VS Code 本身不支持像 IDEA 那样在 gutter(左侧栏)上放可点击的图标按钮——这是 VS Code 的架构限制,官方已经有 issue 但一直没实现。[1][2]
所以严格意义上"点击 gutter 箭头跳转"在 VS Code 里目前做不到。但有几个替代方案可以让你纯鼠标点击完成跳转:
方案 1:Java Code Navigator(最推荐 ⭐)
市场搜 Java Code Navigator(作者 BalaKumar)。
官方介绍:"Supercharge Java development with CodeLens actions for navigating implementations, call hierarchies, type hierarchies, and more."[3]
它在每个 Java 方法/类/接口上方加一行可点击的小字(CodeLens),比如:
Implementations← 点一下直接跳到实现Call Hierarchy← 点一下看调用链Type Hierarchy← 点一下看继承树
这是目前 VS Code 生态里最接近 IDEA 那种"点一下就跳"的体验,纯鼠标操作。
方案 2:开启官方 Java 扩展自带的 CodeLens
如果不想再装插件,把 Microsoft 的 Java 扩展自带的 CodeLens 打开就行。在 settings.json 加:
{
"java.implementationsCodeLens.enabled": "all",
"java.referencesCodeLens.enabled": true
}
效果:接口/方法上方会出现 2 implementations、5 references 这种小字,点一下就跳/出列表,不用快捷键也不用右键。
区别:Java Code Navigator 提供的入口比官方更多更细(Type Hierarchy、Call Hierarchy 等),官方只有 implementations / references。
方案 3:Gutter CodeLens(把 CodeLens 搬到左边栏)
如果你很在意"按钮一定要在左边而不是上面",可以装 Gutter CodeLens(作者 AdrianoLima)。它会把 CodeLens 从代码上方移到 gutter 边上,视觉上更接近 IDEA 的小箭头。[4]
配合方案 1 或 2 一起用,就是 左侧栏可点按钮 → 跳转实现,体验最接近 IDEA。
针对 MyBatis 的 Mapper ↔ XML 快速跳转,VS Code 市场里有好几个专门插件,下面按"是否提供可点击按钮(CodeLens)"+ 安装量综合排序:
🥇 推荐首选:MyBatis Bridge(SAKASHIN)
市场搜 MyBatis Bridge。功能描述非常明确:[1]
- Java → XML:Mapper 接口方法上方显示
Go to Mapper XML链接,点击跳转到对应的<select>/<insert>/<update>/<delete>/<resultMap> - XML → Java:XML 语句的
id属性上方显示Go to Mapper Interface链接 - Service / Controller 中调用 Mapper 方法也会显示
Go to Mapper XML链接 ← 这点很贴心 - 全部基于 CodeLens,纯鼠标点击
🥈 vscode-mybatisx(Howard.Zuo)
市场搜 vscode-mybatisx,5,520 安装量,是市场里最受欢迎的,移植自 IDEA 的 MybatisX。[2]
提供三个 CodeLens 入口:
Go to Mapper xmlGo to Mapper javaCreate in Mapper xml(XML 里没找到对应 SQL 时一键生成模板,很实用)
注意:这个插件有个已知 bug——同名前缀方法(如
test和test123)跳转可能错乱。如果遇到,可换下面的 fork 版本。
🥉 VSCode Mybatis(anaer)
市场搜 VSCode Mybatis(879 安装量)。[3]
是 vscode-mybatisx 的修复版,专门修了同名方法跳转错乱的问题。功能完全一样(Go to Mapper xml / Go to Mapper java / Create in Mapper xml)。如果你项目里有同名前缀方法,直接装这个。
其他可选
| 插件 | 特点 |
|---|---|
| MyBatis Helper(Greenplumwine) | CodeLens "跳转到 XML" + SQL 日志拦截 + SQL 格式化,功能最全[4] |
| MyBatis Boost(young1lin) | 一站式:导航 + Mapper 生成(带 Cursor MCP / Copilot MCP)+ SQL 拦截 + 动态 SQL 高亮[5] |
| mybatis-next(BenLocal,GitHub) | 双向 CodeLens;XML 中的 resultType/parameterType 类名可 Ctrl+点击跳到 Java 类[6] |
选择建议
- 只要跳转,求稳定 →
MyBatis Bridge或VSCode Mybatis (anaer) - 想要 IDEA MybatisX 一比一体验 →
vscode-mybatisx,遇到同名方法 bug 再换 anaer 版 - 希望日志拦截 / SQL 格式化等附加功能 →
MyBatis Helper或MyBatis Boost
最终的组合配方:
Extension Pack for Java // 基础
Java Code Navigator // 接口 → 实现 / 调用链 / 继承树
MyBatis Bridge (或 vscode-mybatisx) // Mapper ↔ XML 跳转
装完后,无论是 Java 接口跳实现,还是 Mapper 跳 XML,都是编辑器里出现可点击文字 → 鼠标点一下完成,体验已经很接近 IDEA 了。
💬 评论