我用 Vibe Coding 搓了一个 IDEA 插件,复制URI 再也不用手动拼了

痛点:你是不是也在手动拼 URI?

做 Java 后端开发的同学,日常一定绑定了这些操作:

  • 联调接口,需要把 Controller 的完整路径发给前端同事
  • 排查线上问题,要从代码里找到接口的完整 URI,然后去日志平台搜索
  • 写接口文档,一个个复制类上的 @RequestMapping 和方法上的 @GetMapping,手动拼接
  • Feign 调用报错,想快速拿到 FeignClient 声明的完整路径去排查

每次都要做同一件事:眼睛在类注解和方法注解之间来回扫,脑子里拼路径,手动复制粘贴拼接。

路径短还好,碰到这种的:

java 复制代码
@RestController
@RequestMapping("/api/v2/business/aggregate")
public class AggregateBusinessController {

    @PostMapping("/queryAggBusinessByUserId")
    public Result<?> queryAggBusinessByUserId(...) { ... }
}

你得复制 /api/v2/business/aggregate,再复制 /queryAggBusinessByUserId,再拼成 /api/v2/business/aggregate/queryAggBusinessByUserId。

一次两次没什么,一天几十次就开始烦了。更别提拼错了还要反复排查。

这种重复且易错的操作,就应该交给工具。

解决方案:CopyUtil ------ 一键复制 Spring URI

于是我用 Vibe Coding 的方式,搓了一个 IntelliJ IDEA 插件:CopyUtil。

功能很简单也很纯粹:光标放在方法上,右键 → Copy URI,完整路径直接进剪贴板。

支持的场景

1. 标准 Spring MVC Controller

java 复制代码
@RestController
@RequestMapping("/api/users")
public class UserController {

    @GetMapping("/list")
    public List<User> list() { ... }
    // Copy URI → /api/users/list
}

支持类上 @RestController、@Controller、@RequestMapping 注解,方法上 @GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping、@RequestMapping 全家桶。

2. Feign Client 接口

java 复制代码
@FeignClient(name = "user-service", path = "/api/users")
public interface UserClient {

    @GetMapping("queryById")
    User queryById(@RequestParam Long id);
    // Copy URI → /api/users/queryById
}

同时兼容 org.springframework.cloud.openfeign 和 org.springframework.cloud.netflix.feign 两种包路径(老项目也能用),@FeignClient 有没有 path 属性都支持。

3. 多路径选择

java 复制代码
@PostMapping({"/save", "/add"})
public Result<?> save(...) { ... }

当方法注解声明了多个路径时,会弹出选择对话框,选哪个复制哪个。

4. 快捷键支持

不想右键?直接 Ctrl + Shift + Alt + R(Mac 上是 Cmd + Shift + Alt + R),一步到位。

Vibe Coding 的体验

这个插件从 0 到发布,全程 Vibe Coding,我做的事情就是:

  1. 描述需求:告诉 AI 我要一个右键复制 Spring URI 的 IDEA 插件
  2. 提供反馈:按钮灰了?告诉它"还是灰的"。路径拼错了?把错误信息贴给它
  3. 验证结果:在真实项目里右键试一下,能用就下一个需求

核心代码、PSI 解析、plugin.xml 配置、Gradle 构建,全部由 AI 生成和迭代。

整个过程最大的感受是:Vibe Coding 不是"AI 写完就能用",而是"你提需求 → AI 实现 → 你验证 → 反馈问题 → AI 修复"的循环。 中间那个"灰色按钮"的 bug,来回调了好几轮才搞定,但每一轮的调试方向都是 AI 在推进,我只负责点按钮和说"还是不行"。

这种开发方式特别适合:

  • 你有明确的需求,但对实现技术不熟悉(比如我对 IDEA 插件开发的 PSI API 完全不了解)
  • 项目体量不大,一个人就能验证闭环
  • 你愿意花时间做"测试员",用真实场景反复验证

安装使用

方式一:IDEA 插件市场安装

Settings → Plugins → Marketplace 搜索 CopyUtil,安装重启即可。

方式二:离线安装

  1. 从 Gitee 仓库 下载最新 Release 的 zip 包
  2. Settings → Plugins → ⚙️ → Install Plugin from Disk,选择 zip 文件
  3. 重启 IDEA

最后

一个小插件,解决一个小痛点。

如果你也受够了手动拼 URI,试试 CopyUtil。

相关推荐
子兮曰4 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰4 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
爱勇宝4 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
胡写代码4 天前
别再前后端各写一套表单校验了
java·后端
大勇前进4 天前
原生 PHP 还是 Laravel?小项目到底要不要上框架
后端
yuzhi_liu4 天前
我用 LangGraph4j 实现 Multi-Agent Supervisor
后端
alsmile4 天前
Node-RED 之外,国产规则引擎的新方案:基于标准语法,Go 先行实现
后端·开源·go
大白804 天前
PHP 内存溢出排查思路:看懂报错日志,精准定位问题
后端
二月龙4 天前
PHP 接口返回统一响应封装,让前后端对接更省心
后端
盖伦发发4 天前
软件工程SOLID 五大设计原则
后端·软件工程