前言
俗话说得好,没有插件的 IDEA
是没有灵魂的。
插件存在的意义本身就是提高效率不是吗?废话不多说,下面我将列出我用起来比较顺手的12款 IDEA
插件,不喜勿喷啊。
Tip:装的插件越多,软件占用的内存也就越大,选择自己常用的就好,不必下一堆然后站着茅坑不拉💩。
“工欲善其事,必先利其器,冲🦆!
”

01. Alibaba Coding Guidelines(阿里巴巴开发规约)
推荐指数:⭐⭐⭐⭐⭐
现如今许多程序员对阿里巴巴都有一种神一样的信仰,开发规范也以阿里的《Java开发手册》作为标准,这款插件就很好地结合了阿里《Java开发手册》,会发现你代码中不符合规范的地方,提示你加以改正。
规范:
效果图:
规范:
效果图:
当然了,都说是规范,推荐我们这么做,又不是一定,有些规范你实在不太习惯,也可以把提示关了(眼不见为净哈哈)
02. CodeGlance(代码编辑区迷你缩放图)
推荐指数:⭐⭐⭐⭐
俗称代码小地图😃
这款插件让右侧细小的滚动条变得更方便拖动,而且也能清晰地知道我们的当前代码所处的大概位置。
还有放大镜功能
03. Maven Helper(Maven 助手)
推荐指数:⭐⭐⭐⭐⭐
想必大家应该都经历过或听过 Maven
依赖冲突,这就是个非常方便解决依赖冲突的插件,而且还可以很清晰地知道我们项目里面都依赖了哪些包。
进入
pom.xml
文件,选择左下角的 Dependency Analyzer红色为冲突依赖,选择排除
04. EmmyLua(Lua 脚本插件)
推荐指数:⭐⭐⭐
我们不是写的 Java
吗,怎么扯到 Lua
上来了???其实 Lua
脚本现在很多时候我们会作用在 Redis
上,因为它的原子性,有时候会将它用户分布式锁的这种场景上,有了这款插件,在 IDEA
里写 Lua
就再也不怕没有提示,像在记事本上写代码一样了!
上手前:
上手后:
Lua
脚本的标准库也都导入进来了,非常方便。
05. Free MyBatis Plugin(MyBatis 插件)
推荐指数:⭐⭐⭐⭐
持久层用过 MyBatis
开发的都知道,一个接口对应一个 Mapper.xml 映射文件,经常找两个文件还要去项目目录树翻半天。这款插件就很好地将两个文件关联起来,可以相互之间跳转,非常方便。
06. MyBatis Log Plugin(SQL 语句打印)
推荐指数:⭐⭐⭐
这是款付费插件(我记得去年用的时候是免费的……)
这款插件可以很好地将我们程序执行的 SQL
语句打印出来,方便我们去验证。
食用方法:
在 application.yml
添加配置
mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
效果:
这时候白嫖党就坐不住了:就打印个 SQL
语句还要收费???
其实你如果不想用这插件的还想打印 SQL
语句的话还有种办法。
将持久层目录的日志级别改成 debug
,程序执行的 SQL
语句就会自动输出。
07. Grep Console(控制台日志过滤)
推荐指数:⭐⭐⭐⭐
有没有发现我上张图的日志颜色不一样,我其实就是用了这款插件。
如果项目没有加日志配置文件的话,Spring
默认输出的日志是长这样的,看着也还凑合吧。
但是一般我们都会在项目中引入日志配置文件,如果没有特殊设置日志级别的输出颜色(一般也都懒得设置),输出后就长这样……
我想看的 INFO
和 DEBUG
都是灰白,没太大作用的警告 WARN
又那么醒目,反了你了!
这时候就可以通过这款插件进行控制台日志的过滤。
除此之外还可以进行相同日志的折叠和自行选择关键词过滤等等操作,感兴趣的小伙伴可以上手试一试。
08. Codota(代码智能补全)
推荐指数:⭐⭐⭐⭐⭐
Codota
基于数百万个开源 Java 程序和我们的代码上下文来完成提示补全,从而帮助我们以更少的错误更快地进行编码。
放心,我们的代码不会被公开。Codota
不会将我们的代码发送到服务器,它只会从当前编辑的文件中发送最少的上下文信息,从而能够根据当前的本地范围进行预测以提示代码补全。
简单来说,它就是教我们写代码的。
比如,如果我们对 JDK8
新特性里面的 Stream
流的用法不熟悉的话,它就可以教我们怎么去书写代码。
比如我们现在要用 list.stream().map()
,不知道怎么用,它就可以提供许多例子给我们参考。
还可以直接搜某个方法都是怎么用的
使用这款插件需要联网操作,如果不想下这款插件想给 IDEA
省点内存,也可以直接在它的官网(https://www.codota.com/code)上自行搜索代码,也很方便。
09. JRebel and XRebel for Intellij(热部署工具)
推荐指数:⭐⭐⭐⭐
项目启动后修改了代码,我们总是需要重启看效果,有了这款工具,在代码写完后,它会自动进行编译将修改过的类重新加载到 JVM
中,而不需要每次重启等几十秒。
这是一款收费插件,不过也还是有办法,在公众号后台回复 “JRebel” 获取激活工具。
通过上述获得反向代理工具后运行,伪造官方服务器地址,相当于本地激活。就是一个 DOS
窗体,先不要关闭!
刚开始装 JRebel
侧边栏会弹出使用向导,点击 JRebel Activation 后进行激活
邮箱随便填,Team URL 如下选一:
http://127.0.0.1:8888/88414687-3b91-4286-89ba-2dc813b107ce
http://127.0.0.1:8888/ff47a3ac-c11e-4cb2-836b-9b2b26101696
http://127.0.0.1:8888/11d221d1-5cf0-4557-b023-4b4adfeeb36a
激活完成。但是还没结束…
要把它弄成离线运行,不然每次要开代理代理工具。
离线后天数可持续180天,如果到期了,可以再启动反向代理工具,点击 Work offline 按钮可再次激活180天。
现在可以关闭代理工具使用了。
食用方式:
将项目的启动设置改成 Update classes and resources
生效时机:
IDEA
失焦,JRebel
开始进行热加载,可以注意底部任务栏,进度条走完即加载完成。此时控制台也打印出了重新加载过的类。
这样在开发过程中可以大大节省我们的时间,比如在前后端联调的时候,需要你改个东西,改完可以立马生效,不需要前端还等着你重启。
“小坑:之前用的时候,被这插件坑了一下。当项目中有定时器任务,如果运行过程中热部署了多次,你的定时器任务方法到点可能重复执行好几次,而不是一次。
”
10. Lombok(快捷开发 Java 库)
推荐指数:⭐⭐⭐⭐⭐
这款插件在现在 IDEA
都会自带了,不过它是结合项目使用的,需要在项目中引入 lombok
依赖,在开发过程中可以大大节省我们的代码量。
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
它可以通过在实体类上加相关注解节省 setter
, getter
, toString()
, equals()
等方法,还可以进行链式编程,让我们的代码具有“魔法”。
相信这款插件大家在很多地方都听过了,我在这想说下我的观点:
有的文章是《为什么有些公司不让用 Lombok?》
还有的文章是《我要狠狠地反驳“公司禁用Lombok”的观点》
确实,任何东西都有利有弊,有的人觉得真香,有的人觉得是语法糖,这种东西不就是看人,哪有什么绝对的东西,能给你带来帮助就用呗(除非公司不让),没什么好喷的,反正我觉得香~
11. Rainbow Brackets(彩虹括号)
推荐指数:⭐⭐⭐⭐
这个插件可以让我们代码中成双成对的括号变得赏心悦目~
还可以通过 Alt + 右键
聚焦当前括号内代码,Esc
取消。
12. Translation(翻译)
推荐指数:⭐⭐⭐⭐⭐
这是我最喜欢的一款翻译插件,它可以很方便地进行查词、划词翻译、中英文替换和文档翻译操作。
查词(Ctrl +Shift + O):
划词翻译(Ctrl + Shift + Y):
这个快捷键和我们上面讲到的 Codota
插件冲突了,可以自行更改
中英文替换(Ctrl + Shift + X):
文档翻译:
最后
今天介绍的这些插件有的能够提高工作效率,还有的只是好看,但却能给我们👨💻打代码的时候带来一丝幸福感也还不错。
如果本文对你有帮助的话不妨点个👍和在看呦。
分享技术,稳住,我们能赢💪!

【收藏向】Intellij IDEA 使用法则(一) - 设置

【收藏向】摊牌了!我的 Chrome 浏览器所有生存法则
