V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Aresxue
V2EX  ›  Java

推广一下自己刚撸的 IDEA 插件—Bean Copy 助手

  •  1
     
  •   Aresxue · 5 天前 · 1218 次点击

    插件名称:bean-copy-helper

    插件地址:https://plugins.jetbrains.com/plugin/28686-bean-copy-helper
    源码地址:https://github.com/Aresxue/bean-copy-helper

    安装方式:在 Settings -> Plugins -> Marketplace 中输入 bean-copy-helper 检索即可找到该插件

    这个插件一开始主要是写给自己用的,在阅读代码和排查 bug 的时候发现有很多项目使用了 Bean Copy ,Bean Copy 有时候确实很好用, 但是它也会带来一些困扰比如源对象通过 Bean Copy 赋值给目标对象以后通过 IDEA 的引用是找不到字段读取和写入( Bean Copy )的地方的,这个插件可以解决这个问题



    可以看到我们可以对于Getter/Setter 方法或者字段使用属性复制范围查找,会认为一次 Bean Copy 是对源对象和目标对象同名且同类型的字段读取和写入(对于源对象来说是读取对于目标对象来说是写入)

    为了避免对原有方法引用的污染所以采用类似Find Usages的方式,这样在跟踪某个字段的读取/写入时再也不会因为 Bean Copy 而被阻断了!!!

    除此之外 Bean Copy 还经常被误用,这里也会对其做一些风险识别




    最典型的场景就是同名字段类型不一致,实际上这个字段是没法被 Copy 过去的!!!

    除此之外还集成了其它一些功能

    可以预览源类和目标类属性的对比并生成相应注释

    预览生成属性复制对应的Getter/Setter 代码


    可以预览源类和目标类复制成功的属性并生成相应注释


    而且使用中我常常发现字体时大时小有时候几乎无法观看,所以开放了字体大小自定义大家可自行修改

    本插件永久免费,有需要的小伙伴自取。

    第 1 条附言  ·  4 天前
    插件仅有 77kb 无任何外部依赖,而且只有基本上指定 action 才触发对应展示,开销极低。
    5 条回复    2025-10-16 11:18:06 +08:00
    MRlaopeng
        1
    MRlaopeng  
       5 天前   ❤️ 1
    牛逼
    PeiXyJ
        2
    PeiXyJ  
       5 天前
    不错 解决了我的痛点,之前也有这样的插件但是不更新了 25 版 idea 无法使用了...您的我试试
    Aresxue
        3
    Aresxue  
    OP
       5 天前
    @PeiXyJ 是指哪个?我看之前的插件基本上没有可以支持 Fing Usages 的所以才自己撸了一个
    AceCandy
        4
    AceCandy  
       5 天前
    能支持本身的 cmd+左键这种吗
    Aresxue
        5
    Aresxue  
    OP
       4 天前
    @AceCandy 这种会对原有的引用关系有污染,所以考虑了一下暂时没有做,后续有时间会实现掉同时会新增一个开关来控制这个行为,你如果感兴趣的话可以 https://github.com/Aresxue/bean-copy-helper fork 一下贡献个 PR 或者自己按照自己的喜好随意修改。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2960 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 12:19 · PVG 20:19 · LAX 05:19 · JFK 08:19
    ♥ Do have faith in what you're doing.