安装之后重启IDEA即可生效
IDEA插件仓库
IntelliJ IDEA激发了许多Java开发人员编写插件,
IntelliJ IDEA Plugins
中目前包含1597个插件并且还在不断增长,可以到这里查看IDEA插件。
Maven Helper
我一般用这款插件来查看maven的依赖树。在不使用此插件的情况下,要想查看maven的依赖树就要使用Maven命令maven dependency:tree来查看依赖。想要查看是否有依赖冲突也可以使用mvn dependency:tree -Dverbose -Dincludes=:只查看关心的jar包,但是这样还是需要我执行命令,并且当项目比较复杂的时候,这个过程是比较漫长的。maven helper就能很好的解决这个问题。
一旦安装了
Maven Helper
插件,只要打开pom文件,就可以打开该pom文件的
Dependency Analyzer视图
(在文件打开之后,文件下面会多出这样一个tab),进入Dependency Analyzer视图之后有三个查看选项,分别是Conflicts(冲突)、All Dependencies as List(列表形式查看所有依赖)、All Dependencies as Tree(树结构查看所有依赖)。并且这个页面还支持搜索。很方便!并且使用该插件还能快速的执行maven命令。
来一张maven helper提供的图片感受一下:
阿里巴巴代码规约检测
2017年10月14日杭州云栖大会,Java代码规约扫描插件全球首发仪式正式启动,规范正式以插件形式公开走向业界,引领Java语言的规范之路。
Java代码规约扫描插件以今年年初发布的《阿里巴巴Java开发规约》为标准,作为Eclipse、IDEA的插件形式存在,检测JAVA代码中存在不规范得位置然后给予提示。规约插件是采用kotlin语言开发的,感兴趣的同学可以去开看插件源码。
阿里巴巴规约插件包含三个子菜单:编码规约扫描、关闭试试检测功能、切换语言至英文(English)。如果工具栏显示中文乱码,可能是字体不支持中文显示,可以在
Settings—>Appearance&Behavior—>Appearance选择支持中文的支持
Jrebel
JRebel for IntelliJ
是一款
热部署
插件。由于我们团队有内部的热部署方案,所以该插件我没用过,但是这个插件和我们内部的插件差不多,所以在这也推荐一下。
AceJump
AceJump其实是一款能够代替鼠标的软件,只要安装了这款插件,可以在代码中跳转到任意位置。按快捷键进入 AceJump 模式后(默认是 Ctrl+J),再按任一个字符,插件就会在屏幕中这个字符的所有出现位置都打上标签,你只要再按一下标签的字符,就能把光标移到该位置上。换言之,你要移动光标时,眼睛一直看着目标位置就行了,根本不用管光标的当前位置。
这个自己安装一下实践起来就知道了,我平时其实不怎么用,可能是没用习惯吧。
markdown
安装这个插件之后,打开.md文件就可以通过一个支持md的视图查看和编辑内容。一般用于写README.md文件。但是这个插件我不太用,因为他对md语法支持的并不是很好。还是习惯用macdown这款软件。
Key promoter
很多开发都是从Eclipse转到Idea的。用习惯了Eclipse的快捷键之后在使用IDEA真的非常不习惯。
Key promoter
这款插件适合新手使用。当你点击鼠标一个功能的时候,可以提示你这个功能快捷键是什么。
RESTful 服务开发辅助工具集: RestfulToolkit
开发中,经过会根据 URI 的部分信息来查找对应的 Controller 中方法,RestfulToolkit 提供了一套 RESTful 服务开发辅助工具集,提供了如下功能:
根据 URL 直接跳转到对应的方法定义 ( Ctrl or Ctrl Alt N ); 提供了一个 Services tree 的显示窗口; 一个简单的 http 请求工具; 在请求方法上添加了有用功能: 复制生成 URL;,复制方法参数... 其他功能: java 类上添加 Convert to JSON 功能,格式化 json 数据 ( Windows: Ctrl + Enter; Mac: Command + Enter )。
详细使用文档,参考:https://plugins.jetbrains.com/plugin/10292-restfultoolkit
中英文翻译工具:Translation
最骚的操作是什么?帆哥在群里分享了一套「半中文编程」:说到了变量命名,先用中文写好,然后用 Translation 插件的 translate and replace 一键替换为英文,这样效率高而且准确。详细使用文档,参考:https://plugins.jetbrains.com/plugin/8579-translation
String Manipulation
字符串日常开发中经常用到的,但是不同的字符串类型在不同的地方可能有一些不同的规则,比如类名要用驼峰形式、常量需要全部大写等,有时候还需要进行编码解码等。这里推荐一款强大的字符串转换工具——String Manipulation。
它强大到什么程度,看下他的功能列表你就知道了:
文本转换操作
切换样式(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)
选定文本大写
Un/Escape
Un/Escape 选中的 java 文本
Un/Escape 选中的 javascript 文本
Un/Escape 选中的 HTML 文本
Un/Escape 选中的 XML 文本
Un/Escape 选中的 SQL 文本
Un/Escape 选中的 PHP 文本
将 diacritics(accents) 转换为 ASCII
将非ASCII 转换为转义的Unicode
将转义的Unicode转换为字符串
Encode/Decode
Encode 选中的文本为 MD5 Hex16
De/Encode 选中的文本为 URL
De/Encode 选中的文本为 Base64
递增/递减
递增/递减所有找到的数字
复制行并且递增/递减所有找到的数字
创建序列:保持第一个数字,递增替换所有其他数字
递增重复的数字
按自然顺序排序
按行随机排序
区分大小写A-z排序
区分大小写z-A排序
不区分大小写A-Z排序
不区分大小写Z-A排序
按行长度排序
通过子选择行排序:每行仅处理一个选择/插入符号
通过选定的分隔将选定的文本格式化为列/表格
将文本对齐为左/中/右
过滤/删除/移除
grep选定的文本,所有行不匹配输入文字将被删除。 (不能在列模式下工作)
移除选定的文本
移除选定文本中的所有空格
删除选定文本中的所有空格
删除重复的行
只保留重复的行
删除所有换行符
交换字符/选择/线/标记
切换文件路径分隔符:Windows < – > UNIX
Alibaba Java Coding Guidelines
地址:http://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines
阿里巴巴出品的java
代码规范
插件
可以扫描整个项目 找到不规范的地方 并且大部分可以自动修复
更多可看: http://github.com/alibaba/p3c/tree/master/idea-plugin
VisualVM Launcher
地址:http://plugins.jetbrains.com/plugin/7115-visualvm-launcher
运行java程序的时候启动visualvm,方便查看jvm的情况 比如堆内存大小的分配
某个对象占用了多大的内存,
jvm调优必备工具
GenerateAllSetter
地址:http://plugins.jetbrains.com/plugin/9360-generateallsetter
一键调用一个对象的所有set方法并且赋予默认值 在对象字段多的时候非常方便
MyBatisCodeHelperPro
地址:http://plugins.jetbrains.com/plugin/9837-mybatiscodehelperpro
mybatis代码自动生成插件,大部分单表操作的代码可自动生成 减少重复劳动 大幅提升效率
如下插件也都一并安装下,好用:
1.lombok plugin: lombok插件 简化bean get set方法
2.Maven Helper: 查看maven pom 冲突 分析神器
3.Maven Dependcency Helper: Search dependency without open the browser
4.Mybatis plugin pybatis插件: 提示mapper xml & java mapper 到xml方法跳转等 or
MybatisCodeHelperPro: mysql xml 自动补全 、mapper xml 互跳等 很好用
4.FindBugs-IDEA: 检查代码bug