几个实用的IDEA插件
共 4433字,需浏览 9分钟
·
2021-09-07 04:53
大家好,我是3y
周末就不聊技术啦,今天就给大家分享下IDEA插件
Java Stream Debugger
JDK1.8新增的Stream流操作,极大地提升了编程快感,也精简了代码。
同时,存在一个问题,debugger下不易调试,不能一行一行地看到执行结果。
Java Stream Debugger 这个插件解决了此问题。
如下代码:
public class Main {
public static void main(String[] args) {
List list = new ArrayList();
list.add("月");
list.add("伴");
list.add("飞");
list.add("鱼");
list.stream().distinct().findFirst().get();
}
}
使用插件调试:
![](https://filescdn.proginn.com/f57d8d6d1debfdb783580f9f6fc4e7ad/500458ea56034718a003468225e07f24.webp)
Jclasslib bytecode viewer
jclasslib bytecode viewer是一个可以可视化已编译Java类文件和所包含的字节码的工具。
使用时直接选择 View --> Show Bytecode With jclasslib
注意:如果是自己项目的源码需要先编译
![](https://filescdn.proginn.com/63638965b59a73ac38678ea329b255e5/e868a9116aa046966d3b9a6467dff74f.webp)
LeetCode editor
LeetCode刷算法神器,可以拉取到LeetCode题,提交代码到LeetCode帮忙执行,非常赞。
![](https://filescdn.proginn.com/b22c368d36677317aa092b6704194856/a970118bc929a618af2f88bda3ce1a77.webp)
Maven Helper
此插件可用来方便显示Maven的依赖树,在没有此插件时,如果想Maven的依赖树需要输入命令行:mvn dependency:tree
才可查看依赖。
如果想看是否有依赖包冲突的话也需要输入命令行等等的操作。
而如果安装Maven Helper插件就可免去命令行困扰,通过界面即可操作完成。
![](https://filescdn.proginn.com/58643494432c4d5c8d2500b55983b347/cea907a189e4ab373e3e4ee2a2461c23.webp)
相应操作:
Conflicts(查看冲突) All Dependencies as List(列表形式查看所有依赖) All Dependencies as Tree(树形式查看所有依赖)
Jrebel
日常开发中,当你项目在debug 的时候,修改任意一个 java 文件时,tomcat并不能将此文件的修改实时编译并反映到运行的项目中去,所以只能重启项目,这个过程是相当痛苦的,尤其是项目稍微大点的话,开发期间可能你就是一直在重启项目。
JRebel是一款JVM插件,它使得Java代码修改后不用重启系统,立即生效。
GenerateAllSetter
该插件作用是可以快速针对已有的model实体对象的属性生产set代码,免去开发者在开发过程中set属性值时还需要去实体对象中翻查的时间,生成的同时会附带类型默认值
![](https://filescdn.proginn.com/e2f922512071c00454c1a052942565a1/196c9e2978ab8d18828cc6ed36c46340.webp)
VisualVM Launcher
这个插件一般可用于在本地开发进行压力测试,性能测试之类的监控器,其他场景一般不推荐使用此模式启动。
会启动另外一个Visual VM窗口,这个窗口是JDK bin目录下的JvisualVM 。
配置地址:
![](https://filescdn.proginn.com/44e1c96b3ad22326523bd10bec9f5164/6a2a8212f90a12b73af117bee3f69659.webp)
![](https://filescdn.proginn.com/1de37a30d070bfb59425245af49efdfc/02b5c55a222a846211c6ad39d2c0f194.webp)
SequenceDiagram
在接手老项目时,一上手很难窥到全貌,这时候要是能够把接口的调用关系,整个时序图展示出来,对深入了解项目帮助很大。
有这么一款插件SequenceDiagram能够根据方法的调用关系,自动生成执行时序图。
安装完成后,在某个类的某个函数中,右键 --> Sequence Diagaram即可调出。
![](https://filescdn.proginn.com/830db9c304508c7981c4da42e48b014f/ce2d37de809787e70d68b9bcca93c019.webp)
Auto filling Java call arguments
代码生成插件,通过快捷键自动补全函数的调用参数,针对包含大量参数的构造函数和方法非常有用!
![](https://filescdn.proginn.com/c4918b7b05b5639148edbe7b6023306c/f175160ae371c883d4cc3779cd947dbb.webp)
GitToolBox
配合版本控制工具Git使用,非常直观显示当前项目分支,及代码未更新,未提交数目,省去查询分支和最新代码等不必要的麻烦。
IntelliJad
IntelliJad是一个Java class文件的反编译工具,需要在 setting 中设置本地Java jad.exe
工具的地址。
找到一个Jar包选择class文件右键Decompile,会出现反编译的结果。
Key Promoter X
这个Key Promoter X插件就会用对话框的形式提醒你使用快捷键操作。
非常适合不熟悉jetbrains全家桶IDE的同学,学习使用快捷键。
![](https://filescdn.proginn.com/8765ccfab5d029216adea3681280fb40/6a0bd90cd438f0a421e973fe025294e5.webp)
Code Screenshots
代码截图工具,有了它可以快速截出漂亮的代码。
配置地址:
![](https://filescdn.proginn.com/1a634f2ba10912abcedd32cfcc98d612/44e439583a534db2abd0528e7770d87f.webp)
Codota AI Autocomplete for Java
这款插件基于AI技术,通过对大量开源的项目学习,帮助开发者提供更可靠的智能推荐,让编程变得更方便!
官网地址:https://www.codota.com/signin/get
下载安装:
![](https://filescdn.proginn.com/39e262e8308f4280dbe32c3af9f0f9f4/4c4ab4fa6b0816c9746bdd2cfbf96142.webp)
代码提示:
当你对写代码的时候的时候,Codota便会根据它学习到代码知识,给出相应的建议,使用的比例。
![](https://filescdn.proginn.com/235c56ab70002f1972b464755e459af9/097ea777c4bd46f26ec9ee3a8e0effaa.webp)
示例代码
如果你要找某个类的示例代码,只需要选择某个类名,点击右键选择Get relevant examples。
便可以获取到在github、stackoverflow等上排名最高的片段,并在IDE中显示出来,更快、更方便。
![](https://filescdn.proginn.com/73f8c6ea483e0a2973e95c72640895b2/325b0d59ced76f33005939bd5136e44a.webp)
也可以通过搜索方式,支持JDK和知名第三方库的函数的使用方法搜索,可以看到其他知名开源项目对该函数的用法 。
![](https://filescdn.proginn.com/fd7afd36e786a3c7af62705726bafbb1/84f25e32890c47672b4eefb0ba5e1e39.webp)
![](https://filescdn.proginn.com/b7f93ad0489469f91c154422dc0af615/142218e5c6751a5c269b0117928db3e3.webp)
Alibaba Java Coding Guidelines
为了让开发者更加方便、并且达到快速规范代码格式的目的并实行起来,阿里巴巴基于《阿里巴巴Java开发规约》手册内容,研发了一套自动化的IDE检测插件,它就是Alibaba Java Coding Guidelines 插件。
该插件由阿里巴巴 P3C 项目组研发。
代码已经开源,GitHub:https://github.com/alibaba/p3c
阿里介绍文章:https://mp.weixin.qq.com/s/IbibsXlWHlM59kfXJqRvZA#rd
如何使用:
在你的项目上或者选中某一个类点击右键就可以看到
![](https://filescdn.proginn.com/2a8878d48e3ce7f0b8cac03648deb5e0/48118d426987059694aa49ffe0df76b7.webp)
扫描出坏代码
![](https://filescdn.proginn.com/ac2ac5ee34493dedb10fe00d0484306a/e5f95a86eec86b46192051fa8bd41465.webp)
Material Theme UI
工具的颜值也很重要,好的主题让人赏心悦目,有码代码的欲望,这是一个IDEA颜值类插件:Material Theme UI
设置
在这里对Material Theme UI插件进行设置
File > Settings > Appearance & Behavior > Material Theme
![](https://filescdn.proginn.com/27e7676c451cb6d2358385ec893c3729/1d7944905de27dcb16da20438cab4e92.webp)
Translation
Translation是一款非常好用的翻译插件,可以随时随地翻译单词、甚至一段话,不再需要额外打开浏览器搜索翻译网站了!
![](https://filescdn.proginn.com/13eee8b2e5d24db1a7b1dcc385bb2b37/0439eb6d18100284d966316a953cdda8.webp)
Properties to YAML Converter
这个插件可以将Properties 配置文件一键转换成YAML 文件,很实用的一个插件。
![](https://filescdn.proginn.com/cdd2f62a99f0bf2e0c76b7e22305221d/9ad1777a718c77fbe0119951a65ea660.webp)
Hiberbee Theme
一款受到了 Monokai Pro 和 MacOS Mojave 启发的主题,是一款色彩层次分明的深色主题。
这个主题的效果图如下,看着也是非常赞!适合编码!
![](https://filescdn.proginn.com/ae107df631ac66590dabb4a6c158680f/4a85f877323dbe4b24eab23596f15d93.webp)
使用主题包
推荐一个网站color-themes
http://color-themes.com/
GsonFormatPlus
一个非常实用的插件,它可以将JSON
字符串自动转换成Java
实体类。
在和其他系统对接时,往往以JSON
格式传输数据,而我们需要用Java
实体接收数据入库或者包装转发,如果字段太多一个一个编写那就太麻烦了。
![](https://filescdn.proginn.com/5c5fe43bd8f36393624f34662d4a69d2/9158c92ce40f554525056bc4e5afd4bc.webp)
Grep Console
默认情况下,IDEA控制台窗口在打印日志时都是一种颜色到底,比如各种info,warn,和error等类型的日志信息交织在一起,不好分辨。
Grep Console插件则可以帮助我们自定义设置不用日志用不同的颜色进行标识,非常方便观看!
自定义配置:
![](https://filescdn.proginn.com/1df5b63d8de01551f8b699ca7db8e7cf/1451117da7ca393abed7f38103f207db.webp)
JOL Java Object Layout
查看对象布局和大小的插件!
![](https://filescdn.proginn.com/9e2ca3602ea48b7949ecfa45ba053da1/7a52177445ea20d980535668ee712d86.webp)
《对线面试官》系列目前已经连载38篇啦,这是一个讲人话面试系列
【对线面试官】HTTP 【对线面试官】Java注解 【对线面试官】Java泛型 【对线面试官】 Java NIO 【对线面试官】Java反射 && 动态代理 【对线面试官】多线程基础 【对线面试官】 CAS 【对线面试官】synchronized 【对线面试官】AQS&&ReentrantLock 【对线面试官】线程池 【对线面试官】ThreadLocal 【对线面试官】CountDownLatch和CyclicBarrier 【对线面试官】为什么需要Java内存模型? 【对线面试官】深入浅出 Java 内存模型 【对线面试官】Java从编译到执行,发生了什么? 【对线面试官】双亲委派机制 【对线面试官】JVM内存结构 【对线面试官】垃圾回收机制 【对线面试官】CMS垃圾回收器 【对线面试官】G1垃圾收集器 【对线面试官】JVM调优 【对线面试官】List 【对线面试官】Map 【对线面试官】SpringMVC 【对线面试官】Spring基础 【对线面试官】SpringBean生命周期 【对线面试官】Redis基础 【对线面试官】Redis持久化 【对线面试官】Redis主从架构 【对线面试官】Redis分片集群 【对线面试官】Kafka基础 【对线面试官】使用Kafka会考虑什么问题? 【对线面试官】MySQL索引 【对线面试官】MySQL 事务&&锁机制&&MVCC 【对线面试官】MySQL调优 【对线面试官】如何实现幂等和去重? 【对线面试官】系统需求多变时,如何设计 【对线面试官】设计模式 ...
网盘里有【简历模板】、【原创电子书】等内容...如果看不太懂,多半是基础不够扎实,建议去网盘领份资料看看!
![](https://filescdn.proginn.com/c88b1443e16c936d32f0ccb2f8b069a3/940d67d692ae7e767c6f1b8062a42ea1.webp)
扫码关注【对线面试官】