市面上常见的IDEA插件评测

2,600 阅读7分钟

目的

工欲善其事必先利其器,我经常在网络上找一些大家推荐的或IDEA Marketplace 排名较高的插件来用,使用过程中发现许多插件并没有看起来的那么好,所以写了这篇评测文章,分享我的踩坑经验。也为将要使用相关插件的同学提供参考。

PS:博主是枚Java 码农,做服务端开发的,所以插件也是在这个方向上选择的。

PS:如果有其他插件想推荐给博主的,可以写在评论里。

星级

★☆☆☆☆ : 纯鸡肋

★★☆☆☆ : 鸡肋、插件功能不完善或很少使用

★★★☆☆ : 可用、插件功能完整并且使用较多,但插件本身可有可无

★★★★☆ : 推荐、插件功能完整,能够解决或优化开发问题

★★★★★ : 神器、插件功能完整,能够解决开发问题并且使用频率很高

CodeGlance 【★★★☆☆】

CodeGlance : 一款代码概览插件,可以把它看做“滚动条Plus”,使用效果如下:

上图右侧就是代码的概览图

  • 优点
    • 拖动浏览代码还是挺方便的,替代滚动条,似乎没有明显优点
  • 缺点
    • 对于我的13.3寸显示器来说,这个插件还是有些占地方的,似乎没有明显缺点。

Free MyBatis plugin【★★★★★】

Free MyBatis plugin

主要功能是让可以从Mybatis Dao 跳转到Mapper.xml,安装后的效果如下: 点击右侧箭头,或者查看方法实现类时,都可以跳转到Mapper.xml

  • 优点
    • 解决了MyBatis Dao无法跳转到Mapper文件的痛点。
    • 该插件也提供了其他功能,例如生成mapper xml文件、mybatis自动补全及语法错误提示等
    • 免费
  • 缺点
    • 无法从Mapper文件跳回 Dao 层。

Grep Console【★★☆☆☆】

Grep Console: 一款控制台日志检索过滤插件。安装之后效果如下图: Expression 里写上你的检索条件,点击后面的按钮进行检索。

  • 优点
    • 可以根据关键字过滤日志后输出
  • 缺点
    • 使用插件检索出的日志,无法跳回到原日志位置,导致我想查看更多日志内容时就会很麻烦。
    • 实际使用中,IDEA自带的检索已经足够使用。

Gson Format【★★☆☆☆】

GsonFormat: 可以将Json对象映射成Pojo字段。安装后效果如下

  • 优点
    • 方便将json传转成Pojo字段
  • 缺点
    • 事实上,很少有完美的json字符串可以让我们转换
    • 没有Json格式校验提醒,Json格式错误时直接报了Exception日志。

Lombok【★★★★★】

Lombok: 一个很轻大的开发插件,可以有效的简化我们的模板代码,例如Getter、Setter等等,现在他已经成为项目开发的标配工具了,安装后效果如下:

  • 优点
    • 通过注解的方式减少模板代码的产生,而且效果拔群
    • 干掉了Getter\Setter、干掉了全参空参构造器、干掉了Builder模式构造器,干掉了模板化的Try-Cache等等。
  • 缺点
    • 需要配置Lombok jar包使用。
    • 需要在IDEA中勾选Enable Annotation Process 选项
    • 似乎没有什么缺点

Material Theme UI【★★★☆☆】

Material Theme UI Mallowigi 一款主题包合集插件,使用效果如下: 这是一款我一直以来舍不得放弃的插件,钟爱它的 Solarized Dark 主题。

  • 优点
    • 改变你的IDEA皮肤、字体、图标
    • 不用一个一个安装主题了,常见的主题它里面都有
  • 缺点
    • 主题皮肤占内存还是有点高的

Maven Helper【★★★★☆】

Maven Helper 一款Maven 依赖关系可视化插件,安装后效果如下:

虽然可以通过Maven 命令来查看jar 包的依赖关系,但这款插件将依赖关系可视化还是很香的,而且有冲突的地方也给予了红色的标记,更容易发现与处理。

MyBatis Log Plugin【★★★☆☆】

MyBatis Log Plugin 将控制台的MyBatis日志SQL与参数组装返回的一款插件,安装后效果如下:

可以将MyBatis SQL日志中占位符‘?’组装到SQL主体里,让SQL可以直接执行。还是挺好用的工具

RestfulToolkit【★☆☆☆☆】

RestfulToolkit 可以对Rest请求进行查找,定位到对应的方法。可以发送rest请求,安装后效果如下:

很鸡肋的一款插件,rest请求的搜索功能可以用插件RequestMapper,后者更轻量。至于它的rest请求功能,完全是个摆设,发送后没有成功与否的相应,没有自定义配置,随便点个目录输入框就重置了。

String Manipulation【★★★★★】

String Manipulation

一块字符串格式化插件,可以将字符串格式化成各种样式,例如snake_case、kebab-case、camelCase等等,安装后效果如下:

很棒的一块插件,功能丰富,效果拔群,我经常用它将DTO的字段转成数据库字段,当然它的功能不仅仅是这些了,熟练使用它能用让你的编码更有效率、更顺滑。

Codota【★★☆☆☆】

Codota

一块代码提示增强插件,可以理解成代码版的搜狗输入法,安装效果如下:

很鸡肋的一块插件,体积大,安装它之后我的代码提示功能会出现卡顿。不会根据我的使用习惯来排列代码提示。

.ignore【★★★★★】

.ignore 神器,使用这款插件可以在git提交的时候忽略不必要提交的文件,例如项目的配置信息,历史记录,版本控制信息等。安装效果如下:

有多重配置方式,让我们提交代码的时候自动过滤不需要提交的文件,开发必不可少。

Request mapper【★★★★☆】

Request mapper 一款根据rest请求路径,快速定位到对应方法的插件,安装效果如下: 很棒的一款插件,和Free MyBatis plugin 异曲同工,从浏览器截取请求,直接粘贴定位到方法。插件的默认快捷键不是很好用,用的多的话可以重新设置。

arthas idea【★★★☆☆】

arthas idea image.png Arthas 是一个很有用的线上服务排查工具,可以查看jvm使用情况,查看文件反编译内容,监控方法或类的调用等等,是我们排查问题的常用工具。这一款插件让Arthas 命令的使用变得更简单,例如我们想查询AbstractBeanFactory的反编译信息,只需要右键类名 -> Arthas Command -> Decompile Class Jad,就可以得到可执行的Arthas 命令。
但是,Arthas在一般的公司、一般的岗位很少被使用,而且这款工具占用资源有点多,使用的时候会感觉明显卡顿,最后这样的工具不利于我们背记Arthas 命令。

BashSupport Pro【★★★★☆】

BashSupport Pro image.png 一款能够检查、运行shell 脚本的插件,很好的补齐了idea 对shell功能支持的不足。但是这款插件是收费的,免费版几乎不可用。

Git Commit Template【★★★☆☆】

Git Commit Template image.png 顾名思义,一款Git代码提交模板,可以在commit的时候选择你提交的代码类型,例如feat(功能特性)、fix(bug相关)、docs(文档注释),对规范提交内容很有帮助。

HighlightBracketPair【★★★☆☆】

HighlightBracketPair image.png image.png 一款括号提醒插件,可以自定义颜色显示不同的括号,对于阅读代码有一定帮助。

SequenceDiagram【★★★★☆】

SequenceDiagram image.png

  • 一款代码时序图生成工具,功能强大,图片生成速度快,点击节点能切换到相关代码,对于梳理流程和阅读代码有很好的帮助。
  • 但是,它的导出图片(png)的功能很吃内存,稍微复杂一点的流程,对应的流程图就无法导出。还有就是,如果我的代码调用链路很深,尤其是阅读框架源码的时候,它会相关逻辑,事无巨细的在时序图上展示出来,然后你会得到一个比代码更难理解的时序图,这反而失去了该工具的价值。

Atom Material ICons【★★★★☆】

  • Atom Material ICons 一款图标插件,图标精美完善,图标来源于「Material Theme UI」插件。不过「Material Theme UI」的图标需要付费才能使用,而Atom Material ICons则是免费的。

安装后效果如下: image.png

Mintlify Writer【★★★☆☆】

  • mintlify/writer,一款开源的AI代码注释插件,可以根据你的逻辑生成因为的代码注释,支持多种语言。生成的代码注释准确但不够细节,可以用来装X。

使用效果如下: image.png

Translation【★★★☆☆】

  • Translation,文本翻译插件,支持使用 Baidu、Google、Youdao、Alibaba 翻译,翻译效果见仁见智。

image.png