1. 安装教程
1.1 安装过程
1.2 安装后的软件目录结构
目录结构:
-
bin:容器,执行文件和启动参数等
这里以我的电脑系统(64 位 windows7, 16G 内存)为例,说明一下如何调整 VM 配置文件:
1、大家根据电脑系统的位数,选择 32 位的 VM 配置文件或者 64 位的 VM 配置文件
2、32 位操作系统内存不会超过 4G,所以没有多大空间可以调整,建议不用调整了
3、64 位操作系统中 8G 内存以下的机子或是静态页面开发者是无需修改的。
4、64 位操作系统且内存大于 8G 的, 如果你是开发大型项目、 Java 项目或是 Android 项目,
建议进行修改,常修改的就是下面 3 个参数:-Xms128m, 16 G 内存的机器可尝试设置为 -Xms512m
(设置初始的内存数,增加该值可以提高 Java 程序的启动速度。 )
-Xmx750m, 16 G 内存的机器可尝试设置为 -Xmx1500m
(设置最大内存数,提高该值,可以减少内存 Garage 收集的频率,提高程序性能)
-XX:ReservedCodeCacheSize=240m, 16G 内存的机器可尝试设置为
-XX:ReservedCodeCacheSize=500m
(保留代码占用的内存容量) -
help:快捷键文档和其他帮助文档
-
jre64: 64 位java 运行环境
-
lib: idea 依赖的类库
-
license:各个插件许可
-
plugin:插件
1.3 安装后的设置软件目录结构
随版本不同,目录及位置也会不同,找不到请百度。
这是 IDEA 的各种配置的保存目录。 这个设置目录有一个特性,就是你删除掉整
个目录之后,重新启动 IntelliJ IDEA 会再自动帮你生成一个全新的默认配置,
所以很多时候如果你把 IntelliJ IDEA 配置改坏了,没关系,删掉该目录,一切
都会还原到默认。
1.3.1 config
config 目录是 IntelliJ IDEA 个性化化配置目录,或者说是整个 IDE 设置目录。
此目录可看成是最重要的目录,没有之一,如果你还记得安装篇的介绍的时候,
安装新版本的 IntelliJ IDEA 会自动扫描硬盘上的旧配置目录,指的就是该目录。
这个目录主要记录了: IDE 主要配置功能、自定义的代码模板、自定义的文件
模板、自定义的快捷键、 Project 的 tasks 记录等等个性化的设置。 比如:
1.3.2 system
system 目录是 IntelliJ IDEA 系统文件目录,是 IntelliJ IDEA 与开发项目一个
桥梁目录, 里面主要有:缓存、索引、容器文件输出等等,虽然不是最重要目录,但也是最不可或缺的目录之一。 比如:
1.4 启动后简单配置
首次启动,会弹出如下的对话框。选择不导入已有的设置。
激活,百度。
1.4.1 设置主题
这里根据个人喜好,进行选择,也可以选择跳过(skip all and set defaults)。后面在settings 里也可以再设置主题等。 这里选择: Next:Default plugins
1.4.2 设置插件
设置 IDEA 中的各种插件,可以选择自定义设置、删除,或者安装本身不存在的插件(比如:支持 Scala 的插件)。这里不设置,后面也可以通过界面菜单栏的settings 进行设置。
IDEA 插件官方下载地址: https://plugins.jetbrains.com/idea
1.4.3 设置显示常见的视图
1.4.5 工程界面展示
1.4.6 工程、模块、工作空间等概念
1、在 Eclipse 中我们有 Workspace(工作空间)和 Project(工程)的概念,在 IDEA中只有 Project(工程)和 Module(模块)的概念。这里的对应关系为:
IDEA 官网说明:
An Eclipse workspace is similar to a project in IntelliJ IDEA
An Eclipse project maps to a module in IntelliJ IDEA
翻译:
Eclipse 中 workspace 相当于 IDEA 中的 Project
Eclipse 中 Project 相当于 IDEA 中的 Module
2、从 Eclipse 转过来的人总是下意识地要在同一个窗口管理 n 个项目,这在
IntelliJ IDEA 是无法做到的。 IntelliJ IDEA 提供的解决方案是打开多个项目实例,即打开多个项目窗口。 即: 一个 Project 打开一个 Window 窗口。
3、在 IntelliJ IDEA 中 Project 是最顶级的级别,次级别是 Module。 一个 ProjectIntelliJ IDEA 的安装、 配置与使用可以有多个 Module。目前主流的大型项目都是分布式部署的, 结构都是类似这种多 Module 结构。
这类项目一般是这样划分的,比如: core Module、 web Module、 plugin Module、solr Module 等等,模块之间彼此可以相互依赖。通过这些 Module 的命名也可以看出,他们之间都是处于同一个项目业务下的模块,彼此之间是有不可分割的业务关系的。 举例:
4、如何创建 Module
5、如何删除Module
此时的删除, 会从硬盘上将此 module 删除掉
1.4.7 查看项目配置
进入项目结构:
1.5 常用配置
进入设置界面:Ctrl+Alt+S
目录结构如下:
1.5.1 设置主题
这里默认提供了三套主题: IntelliJ, Darcula, Windows。 这里可以根据自己的喜好进行选择。
1.5.2 设置窗体及菜单的字体及字体大小 (可忽略)
补充:设置编辑区主题
IDEA 默认提供了两个编辑区主题,可以通过如下的方式进行选择
- 如果想要更多的主题效果的话,可以到如下的网站下载:http://www.riaway.com/
- 下载以后,导入主题: (方式一)file – > import setttings – > 选中下载的主题 jar 文件 – > 一路确认 – > 重启。重启以后,新主题会自动启用。如果没有启用,可以如下方式选择:
- 下载以后,导入主题: (方式二)
- 补充:通过插件(plugins)更换主题
喜欢黑色主题的话,还可以下载插件: Material Theme UI
点击按钮以后,在联网环境下搜索如下的插件-安装-重启 IDEA 即可
如果对安装的主题插件不满意,还可以找到此插件,进行卸载 – 重启 IDEA 即可
1.5.3 设置鼠标滚轮修改字体大小
我们可以勾选此设置后,增加 Ctrl + 鼠标滚轮 快捷键来控制代码字体大小显示
1.5.4 设置鼠标悬浮提示
1.5.5 设置自动导包功能
- Add unambiguous imports on the fly:自动导入不明确的结构
- Optimize imports on the fly: 自动帮我们优化导入的包
1.5.6 设置显示行号和方法间的分隔符
- 如上图红圈所示, 可以勾选 Show line numbers:显示行数。 我建议一般这个
要勾选上。 - 如上图红圈所示, 可以勾选 Show method separators: 显示方法分隔线。这种线有助于我们区分开方法,所以建议勾选上。
1.5.7 忽略大小写提示
- IntelliJ IDEA 的代码提示和补充功能有一个特性:区分大小写。如上图标注所示,默认就是 First letter 区分大小写的。
- 区分大小写的情况是这样的:比如我们在 Java 代码文件中输入stringBuffer,IntelliJ IDEA 默认是不会帮我们提示或是代码补充的,但是如果我们输入StringBuffer 就可以进行代码提示和补充。
- 如果想不区分大小写的话,改为 None 选项即可。
1.5.8 设置取消单行显示 tabs 的操作
- 如上图标注所示,在打开很多文件的时候, IntelliJ IDEA 默认是把所有打开的文件名 Tab 单行显示的。但是我个人现在的习惯是使用多行,多行效率比单行高,因为单行会隐藏超过界面部分 Tab,这样找文件不方便
1.5.9 设置默认的字体、字体大小、字体行间距
1.5.10 修改当前主题的字体、字体大小、字体行间距
如果当前主题不希望使用默认字体、 字体大小、字体行间距, 还可以单独设置:
1.5.11 修改当前主题的控制台输出的字体及字体大小
1.5.12 修改代码中注释的字体颜色
- Doc Comment – Text: 修改文档注释的字体颜色
- Block comment: 修改多行注释的字体颜色
- Line comment: 修改当行注释的字体颜色
1.5.13 设置超过指定 import 个数,改为*
1.5.14 修改类头的文档注释信息
/**
@author shkstart
@create ${YEAR}-${MONTH}-${DAY} ${TIME}
*/
常用的预设的变量,这里直接贴出官网给的:
- ${PACKAGE_NAME} - the name of the target package where the new class or interface will be created.
- ${PROJECT_NAME} - the name of the current project.
- ${FILE_NAME} - the name of the PHP file that will be created.
- ${NAME} - the name of the new file which you specify in the New File dialog box during the file creation.
- ${USER} - the login name of the current user.
- ${DATE} - the current system date.
- ${TIME} - the current system time.
- ${YEAR} - the current year.
- ${MONTH} - the current month.
- ${DAY} - the current day of the month.
- ${HOUR} - the current hour.
- ${MINUTE} - the current minute.
- ${PRODUCT_NAME} - the name of the IDE in which the file will be created.
- ${MONTH_NAME_SHORT} - the first 3 letters of the month name. Example: Jan, Feb, etc.
- ${MONTH_NAME_FULL} - full name of a month. Example: January, February, etc.
1.5.15 设置项目文件编码
- 说明: Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选,不然 Properties 文件中的注释显示的都不会是中文。
1.5.16 设置当前源文件的编码
- 对单独文件的编码修改还可以点击右下角的编码设置区。如果代码内容中包含中文,则会弹出如上的操作选择。 其中:
- ①Reload 表示使用新编码重新加载,新编码不会保存到文件中,重新打开此文件,旧编码是什么依旧还是什么。
- ②Convert 表示使用新编码进行转换,新编码会保存到文件中,重新打开此文件,新编码是什么则是什么。
- ③含有中文的代码文件, Convert 之后可能会使中文变成乱码,所以在转换成请做好备份,不然可能出现转换过程变成乱码,无法还原。
1.5.17 设置自动编译
- 构建就是以我们编写的 java 代码、框架配置文件、国际化等其他资源文件、JSP 页面和图片等资源作为“原材料”,去“生产”出一个可以运行的项目的过程。
- Intellij Idea 默认状态为不自动编译状态, Eclipse 默认为自动编译。
很多朋友都是从 Eclipse 转到 Intellij 的,这常常导致我们在需要操作 class 文件时忘记对修改后的 java 类文件进行重新编译, 从而对旧文件进行了操作。
1.5.18 设置代码水平或垂直显示
1.5.19 快捷键
- 设置快捷为 Eclipse 的快捷键
- 通过快捷键功能修改快捷键设置
- 通过指定快捷键, 查看或修改其功能
- 导入已有的设置
1.5.20 实时模板
- 查看实时模板
- 创建实时模板
1.5.21 关联数据库
表面上很多人认为配置 Database 就是为了有一个 GUI 管理数据库功能,但是这并不是 IntelliJ IDEA 的 Database 最重要特性。数据库的 GUI 工具有很多,IntelliJ IDEA 的 Database 也没有太明显的优势。 IntelliJ IDEA 的Database 最大特性就是对于 Java Web 项目来讲,常使用的 ORM 框架,如 Hibernate、 Mybatis有很好的支持,比如配置好了 Database 之后, IntelliJ IDEA 会自动识别 domain对象与数据表的关系,也可以通过 Database 的数据表直接生成 domain 对象等等。
- 图标 1: 同步当前的数据库连接。 这个是最重要的操作。配置好连接以后或通过其他工具操作数据库以后,需要及时同步。
- 图标 2: 配置当前的连接。
- 图标 3: 断开当前的连接。
- 图标 4: 显示相应数据库对象的数据
- 图标 5:编辑修改当前数据库对象
1.5.22 版本控制
很多人认为 IntelliJ IDEA 自带了 SVN 或是 Git 等版本控制工具,认为只
要安装了 IntelliJ IDEA 就可以完全使用版本控制应有的功能。这完全是一种
错误的解读, IntelliJ IDEA 是自带对这些版本控制工具的插件支持,但是该
装什么版本控制客户端还是要照样装的。
IntelliJ IDEA 对版本控制的支持是以插件化的方式来实现的。旗舰版默认支
持目前主流的版本控制软件: CVS、 Subversion(SVN)、 Git、 Mercurial、Perforce、TFS。又因为目前太多人使用 Github 进行协同或是项目版本管理,所以 IntelliJ IDEA 同时自带了 Github 插件,方便 Checkout 和管理你的Github 项目。
在实际开发中,发现在 IDEA 中使用 SVN 的经历不算愉快,经常会遇到很多
问题,比如紧急情况下 IDEA 无法更新、提交等。所以这里,谈下在 IDEA
中使用 Git。
- 1、提前安装好 Git 的客户端
Git 的 msysGit 官网下载: https://git-scm.com/
Git 客户端 TortoiseGit 官网下载: http://download.tortoisegit.org/tgit/ - 2、关联 git.exe
- 3、关联 GitHub 上的账户,并测试连接
- 4、在 GitHub 上创建账户下的一个新的仓库作为测试:
- 5、支持从当前登录的 Github 账号上直接 Checkout 项目
- 6、在 IDEA 中 clone GitHub 上的仓库:
这里需要在 GitHub 的自己的账户下,复制项目仓库路径, 填写到上图 Git
Repository URL 中。如下:
- 7、连接成功以后,会下载 github 上的项目
- 8、除此之外,还可以通过如下的方式连接 GitHub
- 9、本地代码分享到 GitHub
- 10、Git 的常用操作
- clone: 拷贝远程仓库
- commit: 本地提交
- push:远程提交
- pull:更新到本地
- 11、没有使用 Git 时本地历史记录的查看
即使我们项目没有使用版本控制功能, IntelliJ IDEA 也给我们提供了本地文件历史记录。
1.5.23 断点调试
- Debug 的设置
设置 Debug 连接方式,默认是 Socket。 Shared memory 是 Windows 特有的一个属性,一般在 Windows 系统下建议使用此设置, 内存占用相对较少。 - 常用断点调试快捷键
按钮 | 功能 |
---|---|
step over 进入下一步,如果当前行断点是一个方法,则不进入当前方法体内 | |
step into 进入下一步,如果当前行断点是一个方法,则进入当前方法体内 | |
force step into 进入下一步,如果当前行断点是一个方法,则进入当前方法体内 | |
step out 跳出 | |
resume program 恢复程序运行,但如果该断点下面代码还有断点则停在下一个断点上 | |
stop 停止 | |
mute breakpoints 点中,使得所有的断点失效 | |
view breakpoints 查看所有断点 |
- 条件断点
说明:
调试的时候,在循环里增加条件判断,可以极大的提高效率,心情也能愉悦。
具体操作:
在断点处右击调出条件断点。可以在满足某个条件下,实施断点。
查看表达式的值(Ctrl + u):
选择行, ctrl + u。还可以在查看框中输入编写代码时的其他方法:
1.5.24 配置Maven
maven 的下载 – 解压 – 环境变量的配置这里就赘述了, 需要的参考Maven的必要知识:https://blog.csdn.net/FuTian0715/article/details/130621665。 下面直接整合 Maven。选择自己 Maven 的目录,和 settings文件,然后配置自己的仓库 reposiroty。
- Maven home directory:可以指定本地 Maven 的安装目录所在,因为我已经配置了M2_HOME 系统参数,所以直接这样配置 IntelliJ IDEA 是可以找到的。但是假如你没有配置的话,这里可以选择你的 Maven 安装目录。 此外, 这里不建议使用 IDEA 默认的。
- User settings file / Local repository:我们还可以指定 Maven 的 settings.xml 位置和本地仓库位置。
- Import Maven projects automatically:表示 IntelliJ IDEA 会实时监控项目的 pom.xml 文件,进行项目变动设置。
- Automatically download:在 Maven 导入依赖包的时候是否自动下载源码和文档。默认是没有勾选的, 也不建议勾选,原因是这样可以加快项目从外网导入依赖包的速度,如果我们需要源码和文档的时候我们到时候再针对某个依赖包进行联网下载即可。 IntelliJ IDEA支持直接从公网下载源码和文档的。
- VM options for importer:可以设置导入的 VM 参数。一般这个都不需要主动改,除非项目真的导入太慢了我们再增大此参数。
1.5.25 其他设置
- 生成 javadoc
Locale: 输入语言类型: zh_CN Other command line arguments: -encoding UTF-8 -charset UTF-8
2. 常用快捷键及设置
功能 | 快捷键 |
---|---|
执行(run) | shift + F10 |
调试(debug) | shift + F9 |
提示补全 (Class Name Completion) | alt + / |
单行注释 | ctrl + / |
多行注释 | ctrl + shift + / |
选中数行,整体往后移动 | tab |
选中数行,整体往前移动 | shift + tab |
重写方法 | ctrl+o |
最近的变更 | alt + shift + c |
查找文件 | 双击 shift |
方法入参提示 | Ctrl+P |
批量修改变量名 | Shift + F6 |
批量替换代码 | Ctrl + R |
语句完成(增加;或者{}等) | Ctrl + Shift + Enter |
复制行 | Ctrl + D |
删除行 | Ctrl + D|Ctrl + X |
移动行 | Ctrl + Shift + ↑↓ |
查找类 | Crtl + N |
显示当前文件的结构(查看类中的方法) | Ctrl + F12 |
生成构造器等方法 | Alt + Insert |
生成环绕try等方法 | Ctrl + Alt + T |
格式化代码 | Ctrl + Alt + L |
导入类和包 | Ctrl + Alt + O |
定为到代码块头 | Ctrl + [ |
定为到代码块尾 | Ctrl + ] |
跳转打开的类型 idea 返回(跳转|折返)到上步(刚刚)看到的位置(地方) | Ctrl + Alt + ←/→ |
导航自动跳转到打开的文件(等价于Eclipse的Link With Editor) |
IntelliJ IDEA 206 个快捷键大全,动图演示!搬砖杠杠的!:
https://www.163.com/dy/article/H5PM0NRK0511EBNT.html