前言
正所谓工欲善其事必先利其器,对开发人员而言若想提高编码效率,一款高效的开发工具是必不可少的,相信看到该博客的朋友们都已经对IntelliJ IDEA有所了解了,所以此处就不对IntelliJ IDEA进行介绍,而是直接阐述在实际开发中应用场景。博主使用的IntelliJ IDEA版本为IntelliJ IDEA 2017,因为博主是一名Java开发工程师,所以以下内容均以Java为主。(相信有不少人和我一样是从Eclipse转粉IntelliJ IDEA,在学习IntelliJ IDEA前请尽量忘记Eclipse有关知识)在学习过程中主要参考了https://github.com/judasn/IntelliJ-IDEA-Tutorial,该教程对IntelliJ IDEA介绍十分详细,你们可以直接点击以上链接进行学习。至于为什么写这篇博文,我的目的是想把自己的个性化配置记录下来,当然如果与此同时能帮助到其他人,岂不美哉,本文将持续更新,由于本文内容较多建议读者从目录树上定位想要获取的配置信息
关闭Intellij IDEA自动更新
在File->Settings->Appearance & Behavior->System Settings->Updates下取消Automatically check updates for勾选
隐藏.idea文件夹和.iml等文件
IntelliJ IDEA项目会自动生成一个.idea文件夹和.iml文讲,看着实在是碍眼,所以对以上文件进行隐藏处理
在File->Settings->Editor->File Types下的”Ignore files and folders”一栏添加 *.idea;*.iml;等配置如下图所示
代码编辑器主题风格
编辑器风格修改个人并不推荐完全由自己来配置,因为网上提供了很多优秀的主题风格,我们可以导入自己喜欢的主题,然后在其基础上进行微调,推荐主题下载网站http://www.riaway.com,安装下载主题步骤:
- 1
- 2
设置第一字体和第二字体,修改字体大小:
自行去网上下载相应字体安装后重启Intellij IDEA,在主菜单下选择File->Settings->Editor->Colors & Fonts -> Font
show only monospaced fonts表示筛选显示系统上的等宽字体,由于Windows系统上等宽字体并不多,勾选此选项出现的下拉字体可选择就很少,取消勾选之后,就可以显示系统上所有已安装的字体。我是按教程推荐配置,英文字体选择Monaco,此字体不支持中文,所以把这个设置为第一字体,第二字体使用Yahei Consolas Hybrid,该字体含有中文。字体大小我是修改为20,配置如下图所示:
控制台输出字体和上述类似 此处不进行说明(控制台输出乱码即通过配置字体解决)
文件编码设置
File->Settings->Editor->File Encodings
推荐设置
- 1
- 2
- 3
- 4
Transparent native-to-ascii conversion属性主要用于转换ascii,不然Properties文件的中文会被转码,IntelliJ IDEA除了支持对整个Project设置编码之外,还支持对目录、文件进行编码设置。如果你要对目录进行编码设置的话,可能会出现需要Convert编码的弹出操作选择,强烈建议在转换之前做好文件备份,不然可能出现转换过程变成乱码,无法还原。对单独文件的编码修改还可以点击右下角的编码设置区,如果代码内容中包含中文,则会弹出演示中的操作选择,Reload 表示使用新编码重新加载,新编码不会保存到文件中,重新打开此文件,旧编码是什么依旧还是什么,Convert 表示使用新编码进行转换,新编码会保存到文件中,重新打开此文件,新编码是什么则是什么。个人编码配置如下图所示:
类和方法注释模板
1.修改类注释模板
在File->Settings->Editor->File and Code Templates下分别修改Class,Interface,Enum等注释模板,Class模板部分修改如下,其余的举一反三进行修改。以下所示的${DESCRIPTION}是自定义变量,会在创建类时请求输入
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
类注释模板修改配置图
类注释模板修改效果图
2.方法注释模板修改
在File->Settings->Editor->Live Templates下添加自定义Template Group,并在自定义Template Group下添加自定义Template,具体配置如下图所示
详细配置参数
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
在完成如上配置后,只需在方法内执行/**+Enter键即可生成注释,切记这里说的是方法内部,因为methodParameters()的作用域只在方法内部,这也是Intellij IDEA比较蛋疼的一点,博主在网上找了很久也没发现一个好的解决方案,网上也有人推荐使用JavaDOC插件生成注释,有兴趣的朋友也可以尝试一下
方法注释模板修改效果图
代码格式化
代码格式化的快捷键为Ctrl+Alt+L,如果在类中执行代码格式化则会对代码进行排版,若焦点在类或者文件夹上,则会弹出格式化选项提示框,弹出框如下图所示:
- 1
- 2
- 3
- 4
- 5
自动导入所有包
在Intellij IDEA一次只能导入单个包,没有像Eclipse快速导入包的快捷键Ctrl+Shift+O,但是Intellij IDEA下有个自动导入包的功能。在File->Settings->Editor->General->Auto Import下进行配置,具体配置如下如所示:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Maven配置
在File->Settings->Build,Execution,Deployment->Build Tools->Maven下对Maven进行配置,个人配置如下图所示
- 1
- 2
- 3
- 1
- 2
- 3
Maven聚合工程搭建
1.创建父工程(不需要使用模板)
创建完父工程后删除父工程的src目录,该目录在聚合项目中无用
2.添加非web子模块
3.添加web子模块(使用maven web项目模板)
4.创建完查看工程目录结构如下
5.打开pom.xml文件 观察pom.xml文件的变化
生成serialVersionUID
默认情况下Intellij IDEA关闭了继承了Java.io.Serializable的类生成serialVersionUID的警告,如果需要提示生成serialVersionUID,那么需要做以下设置:在File->Settings->Editor->Inspections下勾选中Java->Serialization issues->Serializable class without ‘serialVersionUID’,将光标放到类名上按Atl+Enter键就会提示生成serialVersionUID了
代码提示忽略大小写
在File->Settings->Editor->General->Code Completion下设置Case sensitive completion为none
IDEA脱离版本控制
现在版本控制都有对应的优秀免费的开源客户端,而且稳定性更好。更多时候我们希望IDEA只是作为开发工具使用,而不参与版本控制,在File->Settings->Version Control下设置VCS为none即可脱离IDEA版本控制,配置如下
实用插件推荐
快捷键提示插件
Key promoter是在你通过非快捷键方式使用某功能时 为你提供快捷键建议 在开始记不住快捷键的情况下 强烈推荐安装
翻译插件
翻译插件 TranslationPlugin,支持支持中英互译、单词朗读,详细安装文档请参考:TranslationPlugin介绍与安装手册
热部署插件JRebel
JRebel热部署插件安装和使用请参考:JRebel热部署插件安装和使用
Maven Helper
Maven 辅助插件 用于查找Maven依赖冲突非常好用的一款插件 安装步骤请参考:Maven Helper安装使用
Properties to YAML Converter
在开发SpringBoot项目时,会需要把Properties的配置格式改为 YAML格式,Properties to YAML Converter提供了很好的支持
阿里巴巴代码规范插件p3c-pmd
详细安装和使用请参考:阿里巴巴代码规范插件p3c-pmd
开发必备快捷键
IntelliJ IDEA提供了丰富的快捷键组合来加快开发效率,但是快捷键太多琳琅满目也会给人无从下手的感觉。下面是我个人整理的在开发过程中必备的快捷键,(注:IDEA快捷键可能会与其他软件快捷键产生冲突,在开发过程中有必要进行取舍)此外IntelliJ IDEA 官方提供了学习IDEA快捷键的一个插件:IDE Features Trainer:https://plugins.jetbrains.com/plugin/8554?pr=idea,大家可以自行去插件库下载学习
Ctrl相关
快捷键 | 介绍 |
---|---|
Ctrl + B | 进入光标所在的方法/变量的接口或是定义处,等效于Ctrl + 左键单击 |
Ctrl + D | 复制光标所在行或复制选择内容,并把复制内容插入光标位置下面 |
Ctrl + F | 在当前文件进行文本查找 |
Ctrl + H | 查看类的继承结构 |
Ctrl + N | 通过类名定位文件 |
Ctrl + O | 快速重写父类方法 |
Ctrl + P | 方法参数提示 |
Ctrl + Y | 删除光标所在行或删除选中的行 |
Ctrl + W | 递进式选择代码块 |
Ctrl + Z | 撤销 |
Ctrl + 1,2,3…9 | 定位到对应数值的书签位置 结合Ctrl + Shift + 1,2,3…9使用 |
Ctrl + F1 | 在光标所在的错误代码出显示错误信息 |
Ctrl + F12 | 弹出当前文件结构层,可以在弹出的层上直接输入进行筛选 |
Ctrl + Space | 基础代码补全默认在Windows系统上被输入法占用,需要进行修改,建议修改为Ctrl + 逗号 |
Ctrl + / | 注释光标所在行代码,会根据当前不同文件类型使用不同的注释符号 |
Alt相关
快捷键 | 介绍 |
---|---|
Alt + Q | 弹出一个提示,显示当前类的声明/上下文信息 |
Alt + Enter | 根据光标所在问题,提供快速修复选择 |
Shift相关
快捷键 | 介绍 |
---|---|
Shift + F3 | 在查找模式下,定位到上一个匹配处 |
Ctrl+Alt相关
快捷键 | 介绍 |
---|---|
Ctrl + Alt + B | 在某个调用的方法名上使用会跳到具体的实现处 |
Ctrl + Alt + L | 格式化代码 可以对当前文件和整个包目录使用 |
Ctrl + Alt + M | 快速抽取方法 |
Ctrl + Alt + O | 优化导入的类和包 可以对当前文件和整个包目录使用 |
Ctrl + Alt + T | 对选中的代码弹出环绕选项弹出层 |
Ctrl + Alt + V | 快速引进变量 |
Ctrl + Alt + F7 | 寻找类或是变量被调用的地方,以弹出框的方式显示 |
Ctrl + Alt + 左方向键 | 退回到上一个操作的地方 |
Ctrl + Alt + 右方向键 | 前进到上一个操作的地方 |
Ctrl+Shift相关
快捷键 | 介绍 |
---|---|
Ctrl + Shift + F | 根据输入内容查找整个项目或指定目录内文件 |
Ctrl + Shift + H | 查看方法的继承结构 |
Ctrl + Shift + J | 自动将下一行合并到当前行末尾 |
Ctrl + Shift + N | 通过文件名定位打开文件/目录,打开目录需要在输入的内容后面多加一个正斜杠 |
Ctrl + Shift + R | 根据输入内容替换对应内容,范围为整个项目或指定目录内文件 |
Ctrl + Shift + U | 对选中的代码进行大/小写轮流转换 |
Ctrl + Shift + W | 递进式取消选择代码块 |
Ctrl + Shift + Z | 取消撤销 |
Ctrl + Shift + / | 代码块注释 |
Ctrl + Shift + + | 展开所有代码 |
Ctrl + Shift + - | 折叠所有代码 |
Ctrl + Shift + 1,2,3…9 | 快速添加指定数值的书签 |
Ctrl + Shift + F7 | 高亮显示所有该选中文本,按Esc高亮消失 |
Ctrl + Shift + Space | 智能代码提示 |
Ctrl + Shift + Enter | 自动结束代码,行末自动添加分号 |
Alt+Shift相关
快捷键 | 介绍 |
---|---|
Ctrl+Alt+Shift相关
快捷键 | 介绍 |
---|---|
其他
快捷键 | 介绍 |
---|---|
F2 | 跳转到下一个高亮错误或警告位置 |
F3 | 在查找模式下,定位到下一个匹配处 |
F4 | 编辑源 |