看了我常用的 IDEA 插件,同事也开始悄悄安装了

IDEA 是程序员用的最多的开发工具,很多程序员想把它打造成一站式开发工具,于是安装了各种各样的插件。通过插件在 IDEA 中完成各种操作,无需安装其他软件,确实很方便!今天给大家分享下我平时常用的 IDEA 插件,个个是精品!
Key Promoter X
Key Promoter X 是一款帮助你快速学习 IDEA 快捷键的插件,当你在 IDEA 中用鼠标点击某些功能时,它会自动提示你使用该功能的快捷键。它能让你更轻松地摆脱使用鼠标功能,从而只使用键盘来开发,这大概是刚开始使用 IDEA 的程序员最需要的插件了。

当我们使用鼠标完成某些工作时,Key Promoter X 会提示对应的快捷键,方便我们更快地掌握 IDEA 的快捷键。

Lombok
Lombok 目前已经是开发 Java 应用的标配了,不仅 SpringBoot 默认支持它,连 IDEA 也内置了 Lombok 插件,无需安装即可使用。Lombok 是一款 Java 代码功能增强库,通过 Lombok 的注解,你可以不用再写 getter、setter、equals 等方法,Lombok 将在编译时为你自动生成。

举个例子,当我们给一个类添加 @Getter 和 @Setter 注解后;
Lombok 就会为我们自动生成所有属性的 Getter 和 Setter 方法,无需我们再手写,具体使用可以参考 Lombok 的使用 。

MyBatisX
MybatisX 是一款基于 IDEA 的快速开发插件,由 MyBatis-Plus 团队开发维护,提示很全功能也很强大。支持 xml 和 Mapper 接口之间的跳转,自带图形化的代码生成器,可以通过类似 JPA 的方式,直接根据方法名称生成 SQL 实现。

我们点击 Mapper 接口方法左侧的图标可以直接跳转到 xml 中对应的 SQL 实现,在 xml 点击左侧图标也可以直接跳转到 Mapper 接口中对应的方法。

当我们创建符合 JPA 规范的方法时,能直接生成 SQL 实现无需手写,MyBatisX 的功能很强大,详细使用可以参考 MybatisX 插件的使用 。

RestfulFastRequest
RestfulFastRequest 号称是 IDEA 版本的 Postman,它是一个功能强大的 Restful API 工具包插件,可以根据已有的方法快速生成接口调试用例。它有一个漂亮的界面来完成请求、检查服务器响应、存储你的 API 请求和导出 API 请求,该插件能帮助你在 IDEA 内更快更高效地调试 API!

下面是使用 RestfulFastRequest 调试 API 接口的一张效果图,用起来还是非常方便的,具体使用可以参考 RestfulFastRequest 插件的使用 。

PlantUML
PlantUML 是一款开源的 UML 图绘制工具,支持通过文本来生成图形,使用起来非常高效。可以支持时序图、类图、对象图、活动图、思维导图等图形的绘制。

下面使用 PlantUML 来绘制一张流程图,可以实时预览,速度也很快,具体使用可以参考 PlantUML 插件的使用 。

SequenceDiagram
SequenceDiagram 是一款能根据代码生成时序图的插件,还支持在时序图上直接导航到对应代码以及导出为图片或 PlantUML 文件。

下面是一张使用 SequenceDiagram 制作的时序图,还是非常不错的,具体使用可以参考 SequenceDiagram 插件的使用 。

GsonFormatPlus
一款能根据 JSON 字符串自动生成实体类的插件,支持 Lombok。

选择类名,右键生成,输入 JSON 字符串即可快速生成对应实体类。

Json Parser
一款简单小巧的 JSON 格式化插件,还在使用在线工具格式化 JSON?试试这款 IDEA 插件吧!

直接打开右侧面板,输入 JSON 字符串即可快速格式化,支持折叠显示。

String Manipulation
一款专业处理字符串的插件,支持各种格式代码命名方式的切换、支持各种语言的转义和反转义、支持字符加密、支持多个字符的排序、对齐、过滤等。总之功能很强大,有需要字符串操作时,可以试试它。

选中需要处理的字符串,右键打开菜单即可开始使用。

MapStruct support
MapStruct 是一款基于 Java 注解的对象属性映射工具,使用的时候我们只要在接口中定义好对象属性映射规则,它就能自动生成映射实现类,不使用反射,性能优秀。

当我们使用它的 IDEA 插件时,他能自动提示映射对象所包含的属性,并且在点击属性时能跳转到对应属性,具体使用可以参考 MapStruct 的使用 。

Alibaba Java Coding Guidelines
阿里巴巴《Java 开发手册》配套插件,可以实时检测代码中不符合手册规约的地方,助你码出高效,码出质量。

比如说手册里有这么一条:

当我们违反手册规约时,该插件会自动检测并进行提示。

同时提供了一键检测所有代码规约情况和切换语言的功能。

如果你想修改某条规约的检测规则的话,可以通过设置的 Editor->Inspections 进行修改。

Alibaba Cloud Toolkit
CloudToolkit 是阿里出品的一款 IDEA 插件,通过它我们可以更方便地实现自动化部署,其内置的终端工具和文件上传功能,即使用来管理服务器也非常方便!这款 IDEA 插件不仅功能强大,而且完全免费!

配置好服务器后,通过它可以一件打包上传到服务器,然后自动执行指定的脚本。

其内置了一个终端工具,提示还挺全的,如果你想在 IDEA 里管理 Linux 服务器,不妨可以试试,具体使用可以参考 CloudToolkit 插件的使用 。

arthas idea
基于 IDEA 开发的 Arthas 命令生成插件,支持 Arthas 官方常用的命令,比如 watch、trace、ognl static、ognl bean method、field、monitor、stack 、tt 等命令。

直接打开右键菜单,选择 Arthas 命令即可快速生成命令,具体使用可以参考 Arthas 使用教程。

Docker
IDEA 官方提供的 Docker 插件,已内置,支持远程 Docker 环境的镜像和容器管理,同时支持使用 Docker Compose 实现批量部署。

通过它能自动打包应用的镜像,jar 包会直接上传到远程服务器并打包成镜像,具体使用可以参考 IDEA 官方 Docker 插件的使用 。

Maven Helper
解决 Maven 依赖冲突的好帮手,可以快速查找项目中的依赖冲突,并予以解决!

我们可以通过 pom.xml 文件底部的依赖分析标签页查看当前项目中的所有依赖。

通过冲突按钮我们可以筛选出所有冲突的依赖,当前项目 guava 依赖有冲突,目前使用的是 18.0 版本。

选中有冲突的依赖,点击 Exclude 按钮可以直接排除该依赖。

同时 pom.xml 中也会对该依赖添加<exclusion>标签,是不是很方便啊!

Grep Console
一款帮你分析控制台日志的插件,可以对不同级别的日志进行不同颜色的高亮显示,还可以用来按关键字搜索日志内容。

当项目打印日志的时候,可以发现不同日志级别的日志会以不同颜色来显示。

如果你需要修改配色方案的话,可以通过 Tools 打开该插件的配置菜单。

然后通过配置菜单修改配色方案。

可以通过在控制台右键并使用 Grep 按钮来调出日志分析的窗口。

然后直接通过关键字来搜索即可。

Markdown
IDEA 官方出品的一款 Markdown 插件,支持编辑 Markdown 文件并进行预览,对于习惯了使用 IDEA 的小伙伴还是非常方便的。

使用它来编辑 Markdown 文件最方便的地方在于,可以直接使用 IDEA 提供的各种快捷键,无需适应一套新的快捷键。

Translation
一款翻译插件,支持 Google、有道、阿里、百度翻译,对我们看源码时翻译注释很有帮助!

直接选中需要翻译的内容,点击右键即可找到翻译按钮;

直接使用翻译文档可以将整个文档都进行翻译;

还可以通过右上角的翻译按钮直接翻译指定内容。

Statistic
一款代码统计工具,可以用来统计当前项目中代码的行数和大小。

我们可以通过顶部菜单中的 View->Tool Windows->Statistic 按钮开启该功能。

此时就可以看到我们项目代码的统计情况了,比如我的开源项目 mall 中 java 代码大小为 2818kB,行数为 85645。

Vue.js
Vue.js 支持插件,写过前端的朋友肯定用过,可以根据模板创建.vue 文件,也可以对 Vue 相关代码进行智能提示。

启用该插件后,可以根据模板新建.vue 文件。

当我们在标签中写入以 v-开头的代码时,会提示 Vue 中的相关指令。

总结
以上是我常用的 20 款 IDEA 插件,涵盖了大部分应用场景,平时开发的时候基本上也够用了。不过 IDEA 插件虽然能增强它的功能,给我们提供一站式的开发体验,但是也不要安装过多,太多了容易卡!
评论