常言道“工欲善其事必先利其器”,作为一个程序员,一个好的IDE可以起到事半功倍的效果。2020 JVM 生态报告显示 Intellij IDEA 已经成为Java开发者的首选。Intellij IDEA的强大不止在于其本身提供的各种功能,也依赖于其插件体系为第三方提供了扩展能力。今天我就分享一下自己常用的插件,有了这些工具的帮助,写bug都比别人快一步

01

Maven Helper

作为最流行的Java应用构建工具,Maven在简化了依赖管理的同时,其依赖传递机制也可能在不经意间同时引入同一个依赖的多个版本造成依赖冲突,在不借助其他工具的情况下可以使用maven dependency:tree命令查看依赖关系,但当依赖比较多时,这个效率是比较低的,借助Maven Helper插件可以更简单的发现冲突并解决。

在插件安装之后,打开pom.xml时在底部会多出一个Dependency Analyzer选项,如图:

勾选Conflicts查看冲突,然后可以选择跳转到源码或直接排除。

02

CodeGlance

Sublime Text编辑器有一个Minimap功能,可以在代码编辑区右侧显示代码缩略图,进行快速跳转。Intellij IDEA可以通过安装CodeGlance插件实现同样的功能。

安装使用效果如下:

03

Free Mybatis plugin

在使用MyBatis框架的时候,发现Mapper接口和XML文件之间跳转十分的麻烦,经常的操作是在Mapper接口中将接口名称复制一下,然后去查找对应的XML文件,打开后CRTL+F查找对应的xml实现,效率很低。安装Free Mybatis plugin插件可以像Java代码一样直接跳转。

效果图:

此外,插件还能及时发现mapper文件和xml文件的潜在的问题,比如方法名不匹配、字段不存在等,如图:

04

Mybatis Log Plugin

使用MyBatis框架的时候,可以配置打印sql语句,但打印出来的是使用了占位符的预编译语句,我们通常需要手动将参数拼接上才能获取可以实际执行的sql语句。Mybatis Log Plugin插件可以自动将预编译语句转换为可执行的语句,这在查找问题的时候非常有用。

效果图:

05

Grep Console

一般应用在运行的时候会产生大量的日志,不同级别的日志混杂在一起不容易区分且不好查找,以往的做法是通过自定义日志格式实现代码高亮,如图:

这种方式麻烦且对代码有入侵,更好的方法是使用Grep Console插件为不同pattern的日志设置颜色。

效果图:

06

Gsonformat

在实际开发中,经常会遇到将json格式字符串转换为Java Bean的情况,一般做法是新建一个类然后添加字段,费时费力不说还可能出错,Gsonformat插件可以解析json自动填充字段,支持嵌套结构。

效果图:

在使用的时候可以勾选使用Lombok注解,减少代码量。

07

Rainbow Brackets

Rainbow Brackets是一个简单但很有用的插件,它可以实现对不同层级括号使用不同的颜色高亮,增加辨识度,特别是在嵌套层级比较多或者代码缩进不规范的时候作用更明显。

效果图:

总结

Intellij IDEA 的插件机制为开发者提供了更多的可能,使用官方提供的Intellij Platform Plugin SDK你也可以自己开发一个插件玩玩。如果你发现一些好用的插件,也可以通过留言分享出来。

特别推荐一个分享架构+算法的优质内容,还没关注的小伙伴,可以长按关注一下:长按订阅更多精彩▼如有收获,点个在看,诚挚感谢

Intellij IDEA必备插件,提高效率的“七种武器”!相关推荐

  1. abaqus dat文件 matlab_提升Abaqus求解效率的七种武器

    作者简介 作者:江丙云 本文首发于iCAETube公众号,技术邻CAE学院授权转载. 江丙云,上海交通大学博士,CAEMC-国际注册CAE工程管理咨询工程师,<汽车实用技术>编委会副秘书长 ...

  2. 报童问题求解最大利润_提升Abaqus求解效率的七种武器

    作者简介 作者:江丙云 本文首发于iCAETube公众号,技术邻CAE学院授权转载. 江丙云,上海交通大学博士,CAEMC-国际注册CAE工程管理咨询工程师,<汽车实用技术>编委会副秘书长 ...

  3. IntelliJ IDEA必备插件

    IntelliJ IDEA必备插件 这篇文章中我会介绍20多个非常不错的IDEA插件以及它们常见功能的使用方法. 概览: IDE Features Trainer:IDEA交互式教程 RestfulT ...

  4. 程序员必备的七种武器

    信息技术的发展时间虽然不长,但其爆炸式的发展速度使信息技术迅速覆盖社会和人类生活的各个角落.程序员们是这场信息化浪潮的见证者之一,更是其中的主要参与者,这是时代赋予每个程序员的机会和责任. 信息技术的 ...

  5. GIS就业参考系列之技术篇——七种武器

    题记 从2007--2017,职场中第一个十年即将完成.十年足以摧毁一个人的样貌:十年可以见证一个时代的发展:十年你从匆匆那年转变为而立之年:不知道从毕业一直还在从事本专业的人有多少,不知道这是一种幸 ...

  6. 转载:应用软件系统架构设计的“七种武器”

    本文章转载自:应用软件系统架构设计的"七种武器"(http://space.itpub.net/12639375/viewspace-167369) 在此向原作者本人表示感谢. ( ...

  7. 让 Python 代码更易维护的七种武器——代码风格(pylint、Flake8、Isort、Autopep8、Yapf、Black)测试覆盖率(Coverage)CI(JK)...

    让 Python 代码更易维护的七种武器 2018/09/29 · 基础知识 · 武器 原文出处: Jeff Triplett   译文出处:linux中国-Hank Chow    检查你的代码的质 ...

  8. 百度云世界里的“七种武器”:PCS、BAE、Site App、ScreenX等

    如果说去年百度世界的关键词是"百度新首页"的话,那么今年在研发者人群中,对百度世界最深的印象就是"七种武器",即在云的世界里,百度为开发者所提供的包括个人云存储 ...

  9. “功夫高考”之高考状元的七种武器

    腾讯教育独家稿件 转载请注明出处作者 人生无处不江湖.有人的地方就有江湖,有江湖就有纷争!是的,高考也是江湖. 资料图片 莘莘学子就是这江湖的主角,家长老师也都是这江湖的成员.高考,就是他们为了登堂入 ...

最新文章

  1. 附录7:SciPy实例记录
  2. [Tool] 使用CodeMaid自動程式排版 - 摘自网络
  3. iphone退款申请教程_如何下载下架的APP?买错应用怎么退款?学会这几招iPhone更好用...
  4. 奇迹觉醒qq服务器比微信少,十年内最大的奇迹!功能比QQ还少的微信为什么能成功?...
  5. 总结下2018年,我们归纳了几种将对智能安防产生影响的技术发展趋势
  6. inputType属性
  7. proteus数码管不亮是什么原因_数码管灌封胶有何产品性能特点?如何正确使用?...
  8. 在暂存区域中显示文件中的git diff [复制]
  9. java中的数组增删查改操作,java数组实现增删改查
  10. 【iOS开发】App 上架相关事宜、解决技巧
  11. 使用Junit对Android应用进行单元测试
  12. Cocos2d-x 引擎概要
  13. 软件经济工程学重点大纲
  14. html班级管理模板,班级管理建议书模板参考
  15. 联想微型计算机改win7,[系统帮助]lenovo联想WIN8改WIN7详细图文全教程
  16. Python3实现HTTP请求
  17. 华为云学院 华为物联网平台
  18. 在Codesys用ST语言基于数组实现栈LIFO数据结构详细说明+代码实例
  19. 高中学计算机都是学什么,学计算机高中选什么科目
  20. 向量法计算空间点到线段的距离(python)

热门文章

  1. 计算机学硕哪些学校好考,什么学校研究生好考,计算机专业研究生哪个学校好考一点...
  2. 【Java】反射( reflection)机制 详解
  3. 【Java】LeetCode 206 反转链表
  4. HDU2544(Dijstra算法)
  5. PTA基础编程题目集-6-11 求自定类型元素序列的中位数
  6. 四步相移法怎么获得相位信息_涨知识!5G的调制方式,到底是怎么实现的?
  7. linux rust 卸载,linux宝塔面板安装rust
  8. native react 常用指令_React-Native 常用命令
  9. python统计元素个数_python怎么统计列表中元素的个数
  10. C++两个 delete 后的问题 野指针