常言道“工欲善其事必先利其器”,作为一个程序员,一个好的IDE可以起到事半功倍的效果。2020 JVM 生态报告显示 Intellij IDEA 已经成为Java开发者的首选。Intellij IDEA的强大不止在于其本身提供的各种功能,也依赖于其插件体系为第三方提供了扩展能力。今天我就分享一下自己常用的插件,有了这些工具的帮助,写bug都比别人快一步(o´ω`o)。
Maven Helper
作为最流行的Java应用构建工具,Maven在简化了依赖管理的同时,其依赖传递机制也可能在不经意间同时引入同一个依赖的多个版本造成依赖冲突,在不借助其他工具的情况下可以使用maven dependency:tree命令查看依赖关系,但当依赖比较多时,这个效率是比较低的,借助Maven Helper插件可以更简单的发现冲突并解决。
在插件安装之后,打开pom.xml时在底部会多出一个Dependency Analyzer选项,如图:
勾选Conflicts查看冲突,然后可以选择跳转到源码或直接排除。
CodeGlance
Sublime Text编辑器有一个Minimap功能,可以在代码编辑区右侧显示代码缩略图,进行快速跳转。Intellij IDEA可以通过安装CodeGlance插件实现同样的功能。
安装使用效果如下:
Free Mybatis plugin
在使用MyBatis框架的时候,发现Mapper接口和XML文件之间跳转十分的麻烦,经常的操作是在Mapper接口中将接口名称复制一下,然后去查找对应的XML文件,打开后CRTL+F查找对应的xml实现,效率很低。安装Free Mybatis plugin插件可以像Java代码一样直接跳转。
效果图:
此外,插件还能及时发现mapper文件和xml文件的潜在的问题,比如方法名不匹配、字段不存在等,如图:
Mybatis Log Plugin
使用MyBatis框架的时候,可以配置打印sql语句,但打印出来的是使用了占位符的预编译语句,我们通常需要手动将参数拼接上才能获取可以实际执行的sql语句。Mybatis Log Plugin插件可以自动将预编译语句转换为可执行的语句,这在查找问题的时候非常有用。
效果图:
Grep Console
一般应用在运行的时候会产生大量的日志,不同级别的日志混杂在一起不容易区分且不好查找,以往的做法是通过自定义日志格式实现代码高亮,如图:
这种方式麻烦且对代码有入侵,更好的方法是使用Grep Console插件为不同pattern的日志设置颜色。
效果图:
Gsonformat
在实际开发中,经常会遇到将json格式字符串转换为Java Bean的情况,一般做法是新建一个类然后添加字段,费时费力不说还可能出错,Gsonformat插件可以解析json自动填充字段,支持嵌套结构。
效果图:
在使用的时候可以勾选使用Lombok注解,减少代码量。
Rainbow Brackets
Rainbow Brackets是一个简单但很有用的插件,它可以实现对不同层级括号使用不同的颜色高亮,增加辨识度,特别是在嵌套层级比较多或者代码缩进不规范的时候作用更明显。
效果图:
总结
Intellij IDEA 的插件机制为开发者提供了更多的可能,使用官方提供的Intellij Platform Plugin SDK你也可以自己开发一个插件玩玩。