一、概述
IDEA(IntelliJ IDEA)是业界公认的最好开发工具之一,当然好不好也因人而异,也不要刻意去争谁强谁弱,高手往往不在乎手中的兵器是什么的。个人而言,更高效的工具适合每个开发人员,在编写代码的时候花的时间少,就有更多的时间去设计代码,当然,使用一个陌生的IDE,效率肯定是比不上自己熟练的IDE的,所以为了节省诸君的学习成本,也为了更快地去接纳和熟练IDEA,所以周末之余,故作此文。
准备
- 所有的电脑软件都有着相同的UI框架、菜单结构,对于每一个开发人员来说,基本的文件操作、项目操作、工作空间操作不成问题,不会讲到。
- 涉及的其他工具(Maven、Git等)不会详细讲,只会讲到如何操作,想要深入学习,关注其他博文。
二、配置
在安装软件(JDK、Maven、Git、IDEA)搭建好环境后,要对IDEA进行一番配置,才能开始开发,每个人都有每个人的配置习惯,可以自己研究自己喜欢的配置,进入IDEA的配置 File | Settings(Ctrl+Alt+S
)开始配置。
选择菜单或设置步骤使用 “|” 分开,后面操作一样
1. 主题与行为
选择自己喜欢的主题:Appearance & Behavior | Appearance | Theme
配置骚气的背景图片:Appearance & Behavior | Appearance | UI Options | Background Image...
在配置中选择合适的窗口选项:Appearance & Behavior | Appearance | Window Options
- Animate windows:关闭动画效果
- Show memory indicator:显示内存使用情况
- Show tool window bars:关闭工具栏显示,按两次
Alt
键可以显示 - Small labels in editor tabs:编辑器显示小标签
配置自己想看到的菜单项和工具栏:Appearance & Behavior | Menus and Toolbars
配置启动退出和保存同步:Appearance & Behavior | System Settings
2. 快捷键与编辑器
配置快捷键:Keymap
配置Git的Pull操作快捷键:Version Control Systems | Git | Repository | Pull 添加 Alt+P
配置Maven窗口显示快捷键:Tool Windows | Maven 添加 Alt+3
优化导包:Editor | General | Auto Import | Java
Insert imports on paste: All:粘贴的时候导入全部包
- Add unambiguous imports on the fly
- Optimize imports on the fly (for current project)
配置显示行号和方法分隔线:Editor | General | Appearance
- Show line numbers
- Show method separators
配置代码折叠规则:Editor | General | Code Folding
配置编辑器标签页:Editor | General | Editor Tabs
- Show tabs in one row:多行显示标签
- 配置高效的智能键:Editor | General | Smart Keys
- Insert paired brackets (), [], <>:成双成对输入
- Reformat block on typing '}':输入'}'后格式化代码
- Use "CamelHumps" words:使用驼峰词,使用
Ctrl+Righ/Left
可以词内移动
- Jump outside closing bracket/quote with Tab:使用Tab键跳到括号/引号外面
配置等宽字体:Editor | Font
- Enable font ligatures:使用连字符
配置文件和代码模板:Editor | File and Code Templates
配置文件编码:Editor | File Encodings
配置代码片段:Editor | Live Templates
添加高效的代码片段可以提高效率
3. 编译构建
配置JDK环境:File | Other Settings | Structure for New Projects... | Project | Project SDK
配置Maven构建:Build, Execution, Deployment | Maven
- 配置Maven主目录:
D:/apache-maven-3.5.4
- 配置用户Maven设置文件:
D:\apache-maven-3.5.4\conf\settings.xml
- 配置本地仓库:
D:\apache-maven-3.5.4\repo
- Always update snapshots:构建时总是更新依赖快照版本
4. 版本管理
配置Git管理:Version Control | Git
配置Git路径:D:\Program Files\Git\bin\git.exe
5. 运行内存
编辑IDEA安装目录下bin目录:D:\IntelliJ IDEA\bin\idea64.exe.vmoptions
文件
-Xms750m -Xmx750m
运行内存配置可以配置IDEA初时内存大小和最大内存数,根据自己电脑配置优化
三、视图
好的界面布局和主题,会让开发者更舒适。快速地能找到想要的信息,会让开发者事半功倍。
1. 工具
常用的工具栏默认位于IDEA界面的左、右、下三侧,也可以用鼠标悬停界面左下角图标弹出所有工具栏,你如果在前面主题与行为中配置隐藏工具栏显示,可以按两次 Alt
键显示。按键Esc
可以帮助你从任何激活的工具栏返回到代码编辑。每个工具栏窗口顶部都会有一个Toolbar,可快速实现某些常用功能以及配置。
推荐使用快捷键弹出想要使用的工具栏,不建议修改默认快捷键,但常用的工具栏如果没有快捷键,应当自定义:
Alt+1
:ProjectAlt+2
:FavoritesAlt+3
:Maven(自定义)Alt+4
:RunAlt+5
:DebugAlt+6
:TODOAlt+7
:StructureAlt+9
:Version ControlAlt+F12
:Terminal
1.1 Project
Project工具栏主要是管理项目文件和目录,所有的项目资源都能在能找到,而且它可以有多种管理形式,可以更好聚焦于当前工作。
管理形式
- Project:显示项目所有项目资源
- Packages:显示项目所有包,适合开发模式
- Tests:显示项目所有测试资源,适合测试模式
- Problems:显示项目所有问题,所有存在问题的代码都会列举
- Changed Files:显示项目所有修改资源,VCS中修改未提交的代码
Toolbar:
- Scroll form source:从当前打开的文件定位文件树位置
- Collapse All:折叠所有目录(
Ctrl+-
) - Setting:打开工具栏设置
- Flatten Packages:平铺展示所有包
- Compact Middle Packages:折叠包名显示
- Hide:隐藏工具栏(
Shift+Esc
)
由于所有的工具栏都会有Setting和Hide,所以后面不会再说,在Setting里面会挑选几个常用的设置说。在Setting中的View Mode配置工具栏的显示模式:
- Dock Pinned:钉住停靠显示
- Dock Unpinned:不钉信停靠显示,激活其他工具栏隐藏
- Undock:不停靠显示,类似Dock Unpinned
- Float:浮动显示
- Window:窗口模式显示,在全屏查看日志时非常有用
技巧
- 在展开的文件树中,可以直接输入字母对类或包进行模糊搜索,快速定位目标。
在很多的窗口都可以这样进行模糊搜索,可以自己大胆尝试,效率大大地提高,不过注意要使用英文输入法。
- 使用
Left/Right
键可以快速折叠/展开当前目录 - 使用
Alt+Home
可以导航当前项目
1.2 Favorites
Favorites可以用来管理开发人员高频使用的目录或文件,可以是包和类,或者是类中的某一行,它分为三类:
项目:在Project工具栏中对包或类右击选择 Add Favorites 添加
书签:在Project工具栏中对包或类或者代码某行,按 F11
添加书签
断点:打断点就会创建
在很多地方使用 F4
快捷键可以快速跳转到源码或目录位置。比如选中 Favorites 中的某个书签或断点,选中 VCS 中的某个记录文件。
1.3. Maven
Maven是管理Maven项目的工具集合,可以执行Maven的生命周期和插件,可以查看依赖等。
Toolbar
- Reimport All Maven Projects:重新导入Maven项目和依赖
- Generate Sources and Update Folders For All Projects:创建源码更新目录
- Download Sources and/or Documentation:下载源码或文档
- Add Maven Projects:添加Maven项目
- Run Maven Build:运行Maven生命周期或插件Goal
- Execute Maven Goal:运行Maven插件Goal
- Toggle Offline Mode:切换离线模式
- Toggle 'Skip Tests' Mode:是否跳过测试
Setting
- Group Modules:Maven模块分组展示
- Always Show ArtifactId:总是展示项目ArtifactId
Profiles
选择激活Maven配置的Profile
1.4 TODO
TODO是管理项目代码中所有含有 // TODO
注释以及 // FIXME
注释的代码,这类特殊注释可以帮助开发人员处理未完成或待修复的事务。
1.5 Structure
Structure可以管理文件结构,包括类、接口等源文件的属性、方法等。
Toolbar:
- Sort by Visibility:按可见性排序
- Sort Alphabetically:按字母排序
- Group Methods by Defining Type:方法按类型分组
- Show Properties:显示属性
- Show Fields:显示字段
- Show non-public:显示非公共的
- Show Inherited:显示继承的
- Show Anonymous Classes:显示匿名类
- Show Lambdas:显示Lambda
- Autoscroll to Source:自动定位到源码
- Autoscroll from Source:自动从源码定位
1.6 Version Control
Version Control是版本管理工具,这里使用Git为例,它一般会有两个固定标签页 Local Changes 和 Log,用来管理本地修改和提交日志。
Toolbar:
- Refresh:刷新本地修改列表
- Commit:提交(
Ctrl+K
) - Revert:撤消选中文件的所有修改(
Ctrl+Alt+Z
) - Show Diff:查看修改源文件的Diff(
Ctrl+D
) - Changelists:把修改源文件分组
- Shelve Silently:搁置修改的源文件(
Ctrl+Alt+H
) - Group By:分组方式:Directory、Repository、Module
- Ignored Files:忽略的文件
- Expand All:展开所有目录(
Ctrl++
) - Collapse All:折叠所有目录(
Ctrl+-
) - Preview Diff:预览修改源文件的Diff
技巧
- 查看Diff或者合并冲突的时候使用
F7/Shift+F7
查看下一个/上一个修改或冲突。 - 在提交代码的时候,可以查看历史的Commit信息。
在提交代码的时候可以配置提交方式和提交前置事件。
提交方式:
- Amend commit:和上一次提交合并,等于命令
git commit --amend
- Sign-off commit:在提交信息后面追加用户签名
提交前置事件:
- Alibaba Code Guidelines:阿里开发规约检测(插件)
- Reformat code:格式化代码
- Optimize imports:优化包的导入
- Perform code analyses:代码分析
- Check TODO(Show All):检查TODO
前置事件非常有用,在提交代码前会自动优化代码的格式以及检查出不合格的代码。
- 在推送(
Ctrl+Shift+K
)代码到远程仓库的时候,可以配置推送Tag以及强推。 - 在IDEA状态栏右边可以管理当前Git仓库的分支,包括本地仓库和远程仓库。
1.7 Event Log
Event Log 查看IDEA全局操作的所有日志,当某些操作异常了,可以在此找到答案。
1.8 Spring
Spring可以根据当前的Spring框架管理Bean和MVC,对于使用Spring框架的开发人员来说,非常方便。
技巧
- 在Spring项目中,在自己创建的properties配置文件,在添加配置的时候,只有默认的
application.properties
文件才会有上下文提示,可以在项目右击菜单中 Open Module Settings (F4
)中将properties文件添加到Spring上下文环境中。
1.9 Terminal
Terminal是IDEA的集成终端,方便执行命令行。
技巧
- Windows系统的开发人员会觉得CMD的功能太弱鸡,所以会使用Git软件自带的Bash,可以将Bash集成到IDEA中。
IDEA集成终端配置Bash:File | Settings | Tools | Terminal | Application settings
Shell path:
D:\Program Files\Git\bin\bash.exe
NOTE:如果终端出现乱码问题,可以百度解决,很简单。
2.0 Web
Web工具栏和Java Enterprise工具栏有点类似,在Web项目中,会管理Servlet、Filter、Listener,当然,如果我们的项目中只用到SpringMVC,而不是自己编写Servlet的话,这工具似乎没有太多的作用。
2. 代码
在代码视图中,主要是使用快捷键快速浏览一些代码的信息,这些快捷键在开发过程中也是大有用处的。
- 查看当前变量、方法、类等的定义:
Ctrl+Shift+I
- 查看当前变量、方法、类等的文档注释:
Ctrl+Q
- 查看当前方法的参数信息:
Ctrl+P
- 查看当前输入的表达式信息:
Ctrl+Shift+P
- 查看当前上下文信息:
Alt+Q
(可以查看当前类文件类定义信息)
技巧
- 使用
Ctrl+Shift+I
快速查看当前枚举、常量的信息 - 调用方法的时候使用
Ctrl+P
查看当前参数输入情况,由其是重载方法的情况 - 使用
Ctrl+Shift+P
快速修改某段代码
3. 文件
在文件视图中,可以导航最近修改的文件或位置。
- 查看最近修改的文件:
Ctrl+E
- 查看最近修改的位置:
Ctrl+Shift+E
4. 窗口
窗口视图可以设置IDEA主界面的显示方式。
- 演示模式:View | Enter Presentation Mode
- 专注模式:View | Enter Distraction Mode
- 全屏模式:View | Enter Full Mode