• 周五. 4 月 24th, 2026

物嫩软件资讯网

软件资讯来物嫩

Intellij IDEA 常用设置三(插件)

admin@wunen

4 月 9, 2025

打开setting文件选择Plugins选项

  • Ctrl + Alt + S
  • File -> Setting

idea引入外部插件的方式

1.打开settings配置面板



Vuesion Theme

主题插件,安装之后代码着色、文件图标更加炫酷



Material Theme UI

超多的主题插件,各种颜色,各种模式



activate-power-mode

根据Atom的插件activate-power-mode的效果移植到IDEA上



Power Mode II —— 打字效果



Background Image Plus + —— 更换IDEA背景



自定义创建live template


只要输入apr ,就能自动提示,并且生成Autowired 语句了。可以根据自己的代码习惯,自定义一些代码模板,帮助我们快速写代码。



Presentation Assistant 快捷键展示

录屏或者共享的时候,效果极佳



RoboPOJOGenerator—JSON (GsonFormat也可以,但是好久没更新过了)

可根据json数据快速生成java实体类。自定义个javaBean(无任何内容,就一个空的类),复制你要解析的Json,然后alt+insert弹出如下界面或者使用快捷键 Alt+S,在里面粘贴刚刚复制的Json,点击OK即可。



Restfultookit

Spring MVC网页开发的时候,我们都是通过requestmapping的方式来定义页面的URL地址的,为了找到这个地址我们一般都是cmd+shift+F的方式进行查找,大家都知道,我们URL的命名一个是类requestmapping+方法requestmapping,查找的时候还是有那么一点不方便的,restfultookit就能很方便的帮忙进行查找。

就能直接定位到我们想要的controller。这个也是真心方便,当然restfultookit还为我们提供的其他的功能。根据我们的controller帮我们生成默认的测试数据,还能直接调用测试,这个可以是解决了我们每次postman调试数据时,自己傻傻的组装数据的的操作,这个更加清晰,比在console找数据包要方便多了。

例如:我要找到/user/add 对应的controller,那么只要Ctrl+斜杠



Statistic— 项目信息统计

可以非常直观地看到你的项目中所有类型的文件的信息



CamelCase – 多种命名格式之间切换


快捷键如果忘记的话可以在 IDEA 的菜单栏的 Edit 找到



jclasslib bytecode viewer 查看字节码

在 IDEA 打开想研究的类,编译该类或者直接编译整个项目( 如果想研究的类在 jar 包中,此步可略过)

打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项。

选择上述菜单项后 IDEA 中会弹出 jclasslib 工具窗口。



Auto filling Java call arguments 自动补全参数

调用一个函数,使用 Alt+Enter 组合键,调出 “Auto fill call parameters” 自动使用该函数定义的参数名填充。



GenerateO2O—— 自动填充参数的值



lombok

Intellij IDEA 2020.3 以后的版本也都默认加了 lombok

这么多注解可以选择,在写 VO、DO、DTO 的时候是真的省心省力,可以省略set/get等方法

要使用 lombok,你得在 pom.xml 文件中引入 lombok 的依赖包

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>



JRebel

热加载插件,也是超级牛逼,就是收费。

Rebel是一种生产力工具,允许开发人员立即重新加载代码更改。它跳过了Java开发中常见的重建,重新启动和重新部署周期。JRebel使开发人员可以在相同的时间内完成更多工作,并在编码时保持顺畅。JRebel支持大多数现实世界的企业Java堆栈,并且易于安装到现有的开发环境中。



File Expander

这个插件不仅可以反编译,还可以打开 tar.gz,zip 等压缩文件


如果有小伙伴反驳说自己不装插件也可以打开 jar 包里的代码,那是因为你的 jar 在 classpath。如果单独打开一个 jar 包,不装插件是看不了的。



GitToolBox

使用 Git 提交代码

它能直接提示你远程版本库里有多少文件更新,你有多少文件没有提交到版本库,甚至可以显示上一次提交的时间和版本更新者



idea zookeezper

管理zookeeper的idea插件本代码是根据https://github.com/linux-china/zookeeper-intellij修改过来的,解决了一些npe异常

可以图形化的查看zk 节点信息了,非常简单



Maven Helper


依赖可视化的神器,可以很清楚地知道依赖的关系图谱,假如有冲突的话,也是一目了然


在插件安装好之后,我们打开pom.xml文件,在底部会多出一个Dependency Analyzer选项

点开这个选项

找到冲突,点击右键,然后选择Exclude即可排除冲突版本的Jar包。

除了使用Maven Helper查看依赖冲突,也可以使用IDEA提供的方法——Maven依赖结构图,打开Maven窗口,选择Dependencies,然后点击那个图标(Show Dependencies)或者使用快捷键(Ctrl+Alt+Shift+U),即可打开Maven依赖关系结构图

在图中,我们可以看到有一些红色的实线,这些红色实线就是依赖冲突,蓝色实线则是正常的依赖。



FindBugs ——检查代码中的隐患

插件提供地址:https://plugins.jetbrains.com/plugin/3847-findbugs-idea

重启idea后如果插件加载成功左下角出现:

实际应用:右键单击(module、单个文件等)—>在快捷菜单中选择findbugs即可

扫描完成后:



Stack trace to UML —— 根据 JVM 异常堆栈画 UML时序图和通信图

打开方式:Analyze > Open Stack trace to UML plugin + Generate UML diagrams from stacktrace from debug



google-java-format —— 代码自动格式化

这个插件的优点在于不需要手动快捷键去格式化代码



Java Stream Debugger —— Stream 将操作步骤可视化



RestfulToolkit—— 快捷跳转Action方法



Translation

翻译插件,它支持 Google 翻译、有道翻译、百度翻译、Alibaba 翻译。

款翻译插件,看源码绝对是爽歪歪。以前遇到不认识的单词,真的是好烦,还要切到翻译软件那里查,现在可好,单词翻译、文档翻译、注释翻译,都有了。



arthas idea

阿里开源的一款强大的 java 在线诊断工具

直接进入你要诊断的方法和类,右键选择对应的命令,就会自动帮你生成了



Alibaba Java Coding Guidelines

阿里巴巴的编码规约检查插件



Alibaba Cloud Toolkit

快速部署到服务器



Free Mybatis plugin

Spring Boot 项目中都会写对应的 mapper.java 和 mapper.xml

有了这款插件之后,两者就可以轻松关联起来

我这里要查看 ArticleMapper 的 xml,那么编辑器的行号右侧就会有一个向右的→,直接点击就跳转过去了

MybatisX 高效操作Mybatis插件



MyBatisCodeHelperPro

支持mapper互跳,方法自动生成,代码自动生成

只输入了一个fin 的各种提示就处理了,当你选择一个回车的时候 mapper.xml 也就给你生成了。

还可以根据数据库表自动生成xml、mapper service 和个增删改查代码,可一建生成所有表



Json Parser json

串格式化工具,不用打开浏览器了

厌倦了打开浏览器来格式化和验证JSON?为什么不安装JSON Parser并在具有脱机支持的IDE内进行呢?JSON Parser是用于验证和格式化JSON字符串的轻量级插件。安装并传播:)



VisualGC

JVM 堆栈可视化工具,可以和 Intellij IDEA 深度集成——VisualGC

当我们需要监控一个进程的时候,直接打开 VisualGC面板,就可以查看到堆栈和垃圾收集情况



CheckStyle-IDEA

追求代码规范的话,可以安装这个插件,它会提醒你注意无用导入、注释、语法错误❎、代码冗余等等


在 CheckStyle 面板中,你可以选择 Google 代码规范或者 sun 的代码规范,跑一遍检查,就可以看到所有的修改建议了

Alibaba Java Coding Guidelines 阿里巴巴代码规范检查插件,按照阿里Java开发手册上规范帮我们检查代码,然后对代码做不同颜色展示,鼠标放上去,会看到提示内容,帮助我们写出更规范的代码



Codota 代码智能提示插件


只要打出首字母就能联想出一整条语句,还显示了每条语句使用频率

还可以搜索相关代码的示例



SequenceDiagram —— 调用链路自动生成时序图

右键 –> Sequence Diagaram 即可调出。双击顶部的类名可以跳转到对应类的源码中,双击调用的函数名可以直接调入某个函数的源码。



GenerateAllSetter

快速生成get set



Key Promoter X 快捷键提示插件

每次都会在右下角弹窗提示,帮助我们快速熟悉快捷键



Leetcode Editor 可以在IDEA中在线刷题



CodeGlance 显示代码缩略图插件

当代码很多的时候,方便查看,很有用



CamelCase 驼峰命名和下划线命名转换

几种风格的命名方式,用快捷键 ⇧ + ⌥ + U / Shift + Alt + U可以进行快速转换,当我们需要修改大量变量名称的时候很方便



SonarLint 代码质量检查插件

提示我不要用 System.out 输出,要用 logger 输出,诸如此类,帮助我们提升代码质量



Save Actions 格式化代码插件

可以帮忙我们优化包导入,自动给没有修改的变量添加final修饰符,调用方法的时候自动添加this关键字等,使我们的代码更规范统一



Grep Console 自定义控制台输出格式插件,控制台日志 高亮



MetricsReloaded 代码复杂度检查插件



Statistic 代码统计插件



Rainbow Brackets 彩虹括号插件



HighlightBracketPair —— 括号开始结尾 高亮显示。



自定义创建live template,快速写代码


只要输入apr ,就能自动提示,并且生成Autowired 语句了。可以根据自己的代码习惯,自定义一些代码模板,帮助我们快速写代码。



修改全局配置,提升工作效率

优化导包配置

取消tab页单行显示

多行显示更多的文件,方便查看

双斜杠注释改成紧跟代码头

选中复制整行,原本只会复制你选中的代码,改完配置后,就能复制整行,无论你是否完全选中



String Manipulation

强大的字符串转换工具。使用快捷键,Alt+m。

  • 切换样式(camelCase, hyphen-lowercase, HYPHEN-UPPERCASE, snake_case, SCREAMING_SNAKE_CASE, dot.case, words lowercase, Words Capitalized, PascalCase)
  • 转换为SCREAMING_SNAKE_CASE (或转换为camelCase)
  • 转换为 snake_case (或转换为camelCase)
  • 转换为dot.case (或转换为camelCase)
  • 转换为hyphen-case (或转换为camelCase)
  • 转换为hyphen-case (或转换为snake_case)
  • 转换为camelCase (或转换为Words)
  • 转换为camelCase (或转换为lowercase words)
  • 转换为PascalCase (或转换为camelCase)
  • 选定文本大写
  • 样式反转



取消匹配大小写

取消勾选后,输入小写 s ,也能提示出 String

优化版本控制的目录颜色展示

创建文件时,自动生成作者和时间信息

显示行号和方法分割线



JUnitGenerator

自动生成测试代码。



MyBatis Log Plugin

根据执行sql 替换掉 ? 显示完整 sql, 直接复制粘贴到数据库 就可以执行

MyBatis Log Plugin 这款插件是直接将Mybatis执行的sql脚本显示出来,无需处理,可以直接复制出来执行的,如图:

执行程序后,我们可以很清晰的看到我们执行了哪些sql脚本,而且脚本可以执行拿出来运行。



RESTfultoolkit

根据url 查找controller

一套 RESTful 服务开发辅助工具集。

  1. 根据 URL 直接跳转到对应的方法定义 ( Ctrl \ or Ctrl Alt N );
  2. 提供了一个 Services tree 的显示窗口;
  3. 一个简单的 http 请求工具;
  4. 在请求方法上添加了有用功能:复制生成 URL;复制方法参数…
  5. java 类上添加 Convert to JSON 功能,格式化 json 数据 ( Windows: Ctrl + Enter; Mac: Command + Enter )
  6. 支持 Spring 体系 (Spring MVC / Spring Boot 1.x,2.x)
  7. 支持 JAX-RS
  8. 支持 Java 和 Kotlin 语言。



快速解决 Maven 依赖冲突的插件

https://plugins.jetbrains.com/plugin/7179-maven-helper

重启idea后如果插件加载成功 打开pom文件左下角出现:

当项目比较小的时候,还比较依靠IEDA的【Diagrams】查看依赖关系,当项目比较大依赖比较多后就比较难找了,这时候就需要一款IDEA插件实现快速解决依赖冲突了。

1、选择“File”→”settings…”

2、点击“Plugins”->“Marketplace”->输入”mavn helper”->点击“install”->点击“OK”完成安装

IDEA Maven Helper插件使用方法

1、去到项目的pom.xml文件点击后,在pom.xlm右边显示下面多了个“Dependency Analyzer”的Tab选项,如下图所示:

2、当切换到“Dependency Analyzer”视图后,可以发现如下界面

其中三个选项分别表示如下:

Conflicts(查看冲突)

All Dependencies as List(列表形式查看所有依赖)

All Dependencies as Tree(树形式查看所有依赖)

3、当没有依赖冲突或者解决依赖冲突时,当选择Conflicts时,右上角会多了个“No Conflicts”

4、当出现冲突需要解决时,下面会显示冲突的信息,我们可以选择冲突的依赖 Exclude它。

5、当点击 Exclude 之后,插件自动会在 pom.xml 文件中添加相关代码,进行子依赖的排除,这样即可快速排除了依赖,还免去了自己手写代码,让我们可以更加专注业务开发。

其它

1、IEDA Diagrams查看依赖冲突方法

②:或者右边的Mavn里面选择“Dependencies”后点击右上角“Show Dependencies”图标后,会显示出依赖关系图。

2、IEDA使用Maven命令查看依赖冲突方法

①:想要查看maven的依赖树的时候使用Maven命令来查看依赖:

maven dependency:tree

②:查看是否有依赖冲突也可以使用Maven命令来查看:

mvn dependency:tree -Dverbose -Dincludes=<groupId>:<artifactId>

===========================================================



开发自己的IDEA插件


一、新建项目


二、配置gradle

最新版的插件开发使用的是kts的gradle插件。基本用法是一样的,不同的是写法有稍微一点不一样。

依赖

//顶层结构
dependencies {
    implementation("org.springframework.boot:spring-boot-starter:2.7.0")
}

// 一般的gradle是 
compile group: 'org.springframework.boot', name: 'spring-boot-starter', version: '2.7.0'

将依赖打进jar包中(不打进去,插件如果有用到依赖,就会无法使用,找不到类)

// 顶层结构
tasks.jar.configure {
    duplicatesStrategy = org.gradle.api.file.DuplicatesStrategy.INCLUDE
    from(configurations.runtimeClasspath.get().filter { it.name.endsWith("jar")}.map { zipTree(it) })
}

将仓库改为阿里云仓库

// 顶层结构
repositories {
    mavenLocal()
    maven("https://maven.aliyun.com/nexus/content/repositories/central/")
    mavenCentral()
}


三、创建第一个action

public class MyAction extends AnAction{
	
	@Override
	public void actionPerformed(@NotNull AnActionEvent e){
		Project project = e.getProject();
		Messages.showMessageDialog(project, "this is message content", "this message title", Messages.getInformationIcon());
	}
}


四、将action配置到plugin中

src -> main -> resource -> META-INF -> plugin.xml

<idea-plugin>
  
 <id>com.geek45.plugin-demo</id>
  
  <name>plugin demo</name>
  
  <description><![CDATA[
        <h1> Demo plugin </h1>
        测试插件 <br>
        点击插件可以弹出一个弹窗
        <p>
        plugin demo <br />
        <b>
              <a href="https://www.geek45.com">Website</a> |
              <a href="https://github.com/xiaopangzhi795/plugin-demo">GitHub</a> |
          </b>
        </p>
  ]]>
  </description>
  
  <depends>com.intellij.modules.platform</depends>
  
  <extensions defaultExtensionNs="com.intellij">

  </extensions>
  
  <actions>
   <action class="com.geek45.action.MyAction" id="myAction" text="action" description="this is action demo" >
      
      <add-to-group group-id="ToolsMenu" anchor="first" />
    </action>
  </actions>
  
</idea-plugin>


五、打包

gradle中,运行jar命令,就可以把插件打成jar包,在项目根目录中,有build目录,libs中会有打好的jar包。

plugin中,选择本地安装,然后选择刚才打好的jar包,就可以把插件安装到自己的idea中。


六、本地运行

打包安装太麻烦了,可以选择本地运行的方式进行调试

选择runIde,就可以本地运行。该命令支持debug运行,debug可以打断点。

运行该命令,会启动一个新的idea,该idea中已经安装了你开发的插件。在该idea中可以直接使用插件,使用过程中,可以在项目里面断点跟进。

新的idea和正常idea操作是一样的,可以打开一个测试code,来测试你的插件是否正常运行。


七、运行效果



Cool Request

简化SpringBoot后端接口调试流程,下面是他的主界面,可以收集项目的Controller信息

①、基本HTTP请求

当双击某个Controller时候,会跳转到请求发送界面,在这里可以填写参数,Cool Request和同类的插件相比,在填写Header时候,也是有提示的,而其他没有,这一点非常方便。

②、结果预览

Cool Request也有五种不同的响应预览,会自动根据响应头中的Content-Type跳转到不同的预览效果里,有json、text、image、html、xml

③、手动触发SpringBoot中的定时器

测试定时器时,不知道大家是怎么测试的,以前是通过单独写一个Controller,然后在内部调用一下,而用了Cool Request,居然可以支持手动触发,这样无论定时器的时间间隔是多少,都可以在Cool Request中随心所欲的调用。

④、反射调用

试想一下这个场景

  • Controller返回的信息不需要用户信息,也就是一些全局的数据
  • 但是Controller需要用户登录后才能使用,即需要附带Token
  • 项目具有拦截器,会拦截没有登录的用户

这个Controller又没有用到用户信息,能不能在调试时候绕过拦截器,以前的做法可能是关闭拦截器,或者先登录,正常拿到Token后在调用,而Cool Request的这个功能就是解决这个问题的,他可以通过反射的一系列技术,绕过拦截器,将请求直接到达Controller,并返回结果。

使用方式是在请求界面选择reflex,然后填写参数后发起请求。

但是reflex也有缺点,他同时也绕过了过滤器,并且没有办法让过滤器也执行,唯一的办法是发起正常的HTTP请求。

⑤、强大的前后置脚本

最方便的莫过于Cool Request提供了java的前后置脚本了,也算不上脚本了,习惯这么叫,而其他插件要不就是没有,要不就是提供的JS脚本,对不熟悉JS的人来说,增加了学习成本,而Cool Request就非常方便了,另外在编写代码时,是有语法提示的,例如在脚本中修改参数的api,也不需要过多的学习,几乎是0成本。

在handlerRequest方法中,有两个参数,第一个是日志输出接口,可以使用他的println方法输出日志,会在右面的log窗口看到,第二个参数是HTTPRequest,他有一系列方法,使用.号时候就有提示,所有的方法我们一眼就能看出是做什么的。

更方便的是,脚本中可以调用项目的类,也支持第三方的类,比如SpringBoot内置的一些Util工具类,都可以调用,已经方便到极致了。

但是也有一个小缺点,内置的编译器是java8的,也就是说,项目使用的java版本超过8,或者是第三方库的版本超过java8,就无法调用了,比如项目使用了SpringBoot3,就无法调用,但是都可以在脚本中自己实现。

在一些动态参数时候,非常有用,比如参数的签名值,是通过一些参数计算出来的,或者是动态时间。

⑥、支持多种请求体

Cool Request支持六种请求体,也支持二进制文件上传。

⑦、快速导入cURL参数

如果有一个cURL参数(可能是从浏览器中复制过来的),那么可以快速导入的Cool Request里面,同时也支持将请求复制为cURL格式。

⑧、导出到Apifox

如果团队使用了apifox,它还可以支持导出到apifox里面,虽然apifox自己也有插件,但是apifox不提供目录选择,而Cool Request支持,当然需要配置apifox的一些token,这点可以在插件的官网找到详细的说明。

⑨、全局搜索API

可以通过一个api路径来快速找到项目中的Controller位置

⑩、静态资源服务器

它内置了一个静态资源服务器,使用也非常简单,选择目录、选择端口、开启即可,就可以通过浏览器访问此目录下的文件了。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注