diff --git a/IntelliJ-IDEA-cache.md b/IntelliJ-IDEA-cache.md index ee98c0d2..c2fd61fe 100644 --- a/IntelliJ-IDEA-cache.md +++ b/IntelliJ-IDEA-cache.md @@ -2,9 +2,9 @@ ## 缓存和索引介绍 -在《IntelliJ IDEA 界面介绍》章节里已经点到了 IntelliJ IDEA 首次加载项目的时候,都会创建索引,而创建索引的时间跟项目的文件多少成正比,我也简单强调了 IntelliJ IDEA 索引的重要性。这里我们再对此进行详细说明索引、缓存对 IntelliJ IDEA 的重要性。 +在[《IntelliJ IDEA 界面介绍》](interface-introduce.md)章节里已经点到了 IntelliJ IDEA 首次加载项目的时候,都会创建索引,而创建索引的时间跟项目的文件多少成正比,我也简单强调了 IntelliJ IDEA 索引的重要性。这里我们再对此进行详细说明索引、缓存对 IntelliJ IDEA 的重要性。 -通过《常见文件类型的图标介绍》章节,你已经认识到 IntelliJ IDEA 下各个文件类型的图标是什么样子的。其中有一个图标我是专门进行了讲解:![Java class located out of the source root](images/xi-a-file-symbols-3.png) `Java class located out of the source root`。我们也都知道该图标是表示 Java 类文件没有在 `Source root` 目录下的文件夹下会显示此图标,但是其实还有一种情况也是会显示此图标的。那就是:在 IntelliJ IDEA 创建索引过程中,所有的 Java类 都是这个图标,如果你项目大的话很容易观察到的,几个文件的小项目倒是不一定会看到。所以在 IntelliJ IDEA 创建索引过程即使你编辑了代码也是编译不了、运行不起来的,所以还是安安静静等 IntelliJ IDEA 创建索引完成。 +通过《常见文件类型的图标介绍》章节,你已经认识到 IntelliJ IDEA 下各个文件类型的图标是什么样子的。其中有一个图标我是专门进行了讲解:![](images/xi-a-file-symbols-3.png) `Java class located out of the source root`。我们也都知道该图标是表示 Java 类文件没有在 `Source root` 目录下的文件夹下会显示此图标,但是其实还有一种情况也是会显示此图标的。那就是:在 IntelliJ IDEA 创建索引过程中,所有的 Java类 都是这个图标,如果你项目大的话很容易观察到的,几个文件的小项目倒是不一定会看到。所以在 IntelliJ IDEA 创建索引过程即使你编辑了代码也是编译不了、运行不起来的,所以还是安安静静等 IntelliJ IDEA 创建索引完成。 IntelliJ IDEA 的缓存和索引主要是用来加快文件查询,从而加快各种查找、代码提示等操作的速度,所以 IntelliJ IDEA 的索引的重要性我再唠叨一万遍都不为过。但是,IntelliJ IDEA 的索引和缓存并不是一直会良好地支持 IntelliJ IDEA 的,这某些特殊条件下,IntelliJ IDEA 的缓存和索引文件也是会损坏的,比如:断电、蓝屏引起的强制关机,当你重新打开 IntelliJ IDEA,基本上百分八十的可能 IntelliJ IDEA 都会报各种莫名其妙错误,甚至项目打不开,IntelliJ IDEA 主题还原成默认状态。也有一些即使没有断电、蓝屏,也会有莫名奇怪的问题的时候,也很有可能是 IntelliJ IDEA 缓存和索引出问题,这种情况还不少。遇到此类问题也不用过多担心。,下面就来讲解如何解决。 @@ -27,4 +27,4 @@ IntelliJ IDEA 的缓存和索引主要是用来加快文件查询,从而加快 ![其他](images/xii-a-invalidate-cache-3.jpg) -> * 目前我电脑的 IntelliJ IDEA 是新装的,也就打开了几个小项目,所有打开的项目大小加起来不到 5 M,但是他们创建的索引大家就已经上百兆了,如上图所示。所以如果你 C 盘空间不足的情况下,最好转移下 `system` 目录,方法可以根据《IntelliJ IDEA 相关核心文件和目录介绍》讲解的方法进行。 +> * 目前我电脑的 IntelliJ IDEA 是新装的,也就打开了几个小项目,所有打开的项目大小加起来不到 5M,但是他们创建的索引大家就已经上百兆了,如上图所示。所以如果你 C 盘空间不足的情况下,最好转移下 `system` 目录,方法可以根据《IntelliJ IDEA 相关核心文件和目录介绍》讲解的方法进行。 diff --git a/README.md b/README.md index 0bfc191e..3ad602d5 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ 2015-08-31: -本文现阶段进入第一个版本阶段,后面还会调整和补充,完善时间预计到九月中旬(一起庆祝抗战放假),所以暂时不建议转载这个还有瑕疵的作品,等正式出来了,这里会进行更新,提示可以开始fork了。 +本文现阶段进入第一个版本阶段,后面还会调整和补充,完善时间预计到九月中旬(一起庆祝抗战放假),所以暂时不建议转载这个还有瑕疵的作品,等正式出来了,这里会进行更新,提示可以开始 fork 了。 同时也邀请您一起参与完善该教程,欢迎您反馈我的错误和意见!!! @@ -44,3 +44,4 @@ ## 联系(Contact) From Judas.n(judas.n@qq.com), + diff --git a/config.json b/config.json index 64eb0192..65e9827a 100644 --- a/config.json +++ b/config.json @@ -1,13 +1,4 @@ { - "name": "项目名称,必填", - "introduction": "Wiki 首页的项目介绍,必填", - "title": "页面的 title 标签的内容,非必填", - "keywords": "页面的 keywords 标签的内容,非必填", - "description": "页面的 description 标签的内容,非必填", - "path": { - "content": "正文的文件夹路径,相对路径绝对路径皆可,默认根目录,非必填", - "images": "引用图片的文件夹路径,相对路径绝对路径皆可,默认为根目录下的 images 文件夹,非必填", - "readme": "关于页面的路径,相对路径绝对路径皆可,默认根目录下的 README.md,非必填", - "toc": "目录的路径,相对路径绝对路径皆可,默认根目录下的 TOC.md,非必填" - } + "name": "IntelliJ IDEA 使用教程", + "introduction": "本系列教程从 IntelliJ IDEA 的安装、卸载、软件设置、项目配置等各个方面进行讲解。" } \ No newline at end of file diff --git a/cover/background.jpg b/cover/background.jpg index 7726503e..9785f03d 100755 Binary files a/cover/background.jpg and b/cover/background.jpg differ diff --git a/cover/cover.jpg b/cover/cover.jpg deleted file mode 100644 index 858a9e37..00000000 Binary files a/cover/cover.jpg and /dev/null differ diff --git a/cover/logo.png b/cover/logo.png index c350c165..28936b55 100644 Binary files a/cover/logo.png and b/cover/logo.png differ diff --git a/database-introduce.md b/database-introduce.md index 3f1ca46c..7db0f8f3 100644 --- a/database-introduce.md +++ b/database-introduce.md @@ -4,7 +4,6 @@ ![配置 Database 组件的数据库连接](images/xxv-a-database-connection-1.gif) - > * 表面上很多人认为配置 Database 就是为了有一个 GUI 管理数据库功能,但是这并不是 IntelliJ IDEA 的 Database 最重要特性。数据库的 GUI 工具有很多,IntelliJ IDEA 的 Database 也没有太明显的优势。IntelliJ IDEA 的 Database 最大特性就是对于 Java Web 项目来讲,常使用的 ORM 框架,如 Hibernate、Mybatis 有很好的支持,比如配置好了 Database 之后,IntelliJ IDEA 会自动识别 domain 对象与数据表的关系,也可以通过 Database 的数据表直接生成 domain 对象等等。 > * 如上图 Gif 所示,这是一个完成的配置 Database 过程,对于数据库需要的依赖包,IntelliJ IDEA 可以自动帮我们下载,所以我们只要配置对应的连接参数即可。 diff --git a/debug-introduce.md b/debug-introduce.md index a930680c..8c8230f5 100644 --- a/debug-introduce.md +++ b/debug-introduce.md @@ -6,7 +6,6 @@ > * 如上图标注 1 所示,表示设置 Debug 连接方式,默认是 `Socket`。`Shared memory` 是 Windows 特有的一个属性,一般在 Windows 系统下建议使用此设置,相对于 `Socket` 会快点。 - ## Debug 常用快捷键 |快捷键|介绍| @@ -25,7 +24,6 @@ ## Debug 特殊技能使用 - ![Debug 特殊技能使用](images/xxiii-b-debug-use-1.gif) > * 如上图 Gif 所示,查看所选对象的方法常用有三种方式: diff --git a/emmet-introduce.md b/emmet-introduce.md index 0c069268..d0cd0dd4 100644 --- a/emmet-introduce.md +++ b/emmet-introduce.md @@ -17,7 +17,6 @@ Emmet 资料介绍: > * Emmet 速查表: > * Emmet 项目主页: - ## Emmet 的设置 ![Emmet 的设置](images/xix-b-emmet-settings-1.jpg) diff --git a/file-symbols-introduce.md b/file-symbols-introduce.md index 2b5862ee..192d75c0 100644 --- a/file-symbols-introduce.md +++ b/file-symbols-introduce.md @@ -7,8 +7,8 @@ > * 官网地址: > * 对于各个图标,上图的 `Description` 写得非常详细,但是有几个还是需要进行特别的说明下。 > ->> * ![Source root](images/xi-a-file-symbols-2.gif) `Source root`,你可以理解为源目录,源码的作用就是用来专门放 Java 类文件,相对于编译出来的 class 文件而言,它就是源。我们一般默认名字叫 `src` 的目录就是源目录,但是其实并不是这样的,在 IntelliJ IDEA 中,即使叫 `srcs` 也是可以设置为 `Source root`,所以源目录跟目录命名是没有关系的,而是在于 IntelliJ IDEA 支持对任意目录进行设置为 `Source root`,具体设置在会后面章节进行详解。 `Source root` 的作用是标记该目录下的文件是可编译的。 ->> * ![Java class located out of the source root](images/xi-a-file-symbols-3.png) `Java class located out of the source root`,由于上一条我们知道 `Source root` 目录是用来告诉 IntelliJ IDEA 这是编译目录,而假如你 Java 类文件没有放在该目录或是该目录的子包下,那该 Java 类则无法编译,就会被表示成这个图标。 +>> * ![](images/xi-a-file-symbols-2.gif) `Source root`,你可以理解为源目录,源码的作用就是用来专门放 Java 类文件,相对于编译出来的 class 文件而言,它就是源。我们一般默认名字叫 `src` 的目录就是源目录,但是其实并不是这样的,在 IntelliJ IDEA 中,即使叫 `srcs` 也是可以设置为 `Source root`,所以源目录跟目录命名是没有关系的,而是在于 IntelliJ IDEA 支持对任意目录进行设置为 `Source root`,具体设置在会后面章节进行详解。 `Source root` 的作用是标记该目录下的文件是可编译的。 +>> * ![](images/xi-a-file-symbols-3.png) `Java class located out of the source root`,由于上一条我们知道 `Source root` 目录是用来告诉 IntelliJ IDEA 这是编译目录,而假如你 Java 类文件没有放在该目录或是该目录的子包下,那该 Java 类则无法编译,就会被表示成这个图标。 ## 各类文件类型图标介绍 @@ -17,6 +17,6 @@ > * 官网地址: > * 对于各个图标,上图的介绍得非常清楚,我这边只做一个类型文件的补充。 > ->> * ![JavaScript 两种图标介绍](images/xi-b-file-symbols-2.png) +>> * JavaScript 两种图标介绍![](images/xi-b-file-symbols-2.png) >> * 如上图所示,对于压缩过的 JavaScript 文件,图标会有 `010`图案。 diff --git a/install-summarize.md b/install-summarize.md index 62acfbda..096d6581 100644 --- a/install-summarize.md +++ b/install-summarize.md @@ -2,12 +2,12 @@ ## 硬件建议 -从上一讲的安装教程来看,IntelliJ IDEA 对硬件的要求看上去不是很高。可是实际在开发中其实并不是这样的,特别是开发 Java Web 的项目的计算机,2 G 内存是基本不够用的。 +从上一讲的安装教程来看,IntelliJ IDEA 对硬件的要求看上去不是很高。可是实际在开发中其实并不是这样的,特别是开发 Java Web 的项目的计算机,2G 内存是基本不够用的。 我们现在来假设一种国内常见的开发环境: ->有一个在开发的 Java Web 项目,它使用的框架为主流的:Struts + Spring + Hibernate,使用者三个框架的过程中,我们要引入大量的框架架包,在我们的 Web 容器启动时,这些框架架包就要占用大量的内存,而且 IntelliJ IDEA 本身功能繁多,占用的内存也不算低,再加上我们这里还没计算计算机上的其他软件应用。所以基本上 2 G 内存的计算机只适合写小程序、小项目或是开发静态页面。 +>有一个在开发的 Java Web 项目,它使用的框架为主流的:Struts + Spring + Hibernate,使用者三个框架的过程中,我们要引入大量的框架架包,在我们的 Web 容器启动时,这些框架架包就要占用大量的内存,而且 IntelliJ IDEA 本身功能繁多,占用的内存也不算低,再加上我们这里还没计算计算机上的其他软件应用。所以基本上 2G 内存的计算机只适合写小程序、小项目或是开发静态页面。 -我个人建议,如果你是开发 Java Web 项目最好的方案是 8 G 内存或是以上,硬盘能在用上固态是最好的,因为 IntelliJ IDEA 有大量的缓存、索引文件,把 IntelliJ IDEA 的缓存、索引文件放在固态上,IntelliJ IDEA 流畅度也会加快很多。 +我个人建议,如果你是开发 Java Web 项目最好的方案是 8G 内存或是以上,硬盘能在用上固态是最好的,因为 IntelliJ IDEA 有大量的缓存、索引文件,把 IntelliJ IDEA 的缓存、索引文件放在固态上,IntelliJ IDEA 流畅度也会加快很多。 **如果你正在使用 Eclipse / MyEclipse,想通过 IntelliJ IDEA 来解决计算机的卡、慢等问题,我这里可以直接明白地告诉你:这基本上是不可能的,本质上你应该对自己的硬件设备进行升级**。 diff --git a/installation-directory-introduce.md b/installation-directory-introduce.md index 1db9d89c..4f195660 100644 --- a/installation-directory-introduce.md +++ b/installation-directory-introduce.md @@ -23,17 +23,17 @@ ## 配置文件常见修改内容说明 -![JVM配置说明](images/viii-a-configuration-files-1.jpg) +![JVM 配置说明](images/viii-a-configuration-files-1.jpg) -> * 上图是 64 位可执行文件的 JVM 配置文件内容,如果你是 32 位的系统你应该修改的是 `idea.exe.vmoptions` 文件里面的内容,但是由于 32 位系统内存一般都是 2 G 左右的,所以也没有多大空间可以调整,所以一般无需调整的。 -> * 修改的原则主要是根据自己机器的内存情况来判断的,我个人是建议 8 G 以下的机子或是静态页面开发者都是无需修改的。如果你是开发大型项目、Java 项目或是 Android 项目,并且内存大于 8 G,建议进行修改,常修改的就是下面 4 个参数,我这里主要以我的机子会例进行建议,每个人机子情况不一,这里也只是做一个引子,最好的调整方式是你可以根据 jconsole 这类工具进行观察后个性化调整。 +> * 上图是 64 位可执行文件的 JVM 配置文件内容,如果你是 32 位的系统你应该修改的是 `idea.exe.vmoptions` 文件里面的内容,但是由于 32 位系统内存一般都是 2G 左右的,所以也没有多大空间可以调整,所以一般无需调整的。 +> * 修改的原则主要是根据自己机器的内存情况来判断的,我个人是建议 8G 以下的机子或是静态页面开发者都是无需修改的。如果你是开发大型项目、Java 项目或是 Android 项目,并且内存大于 8G,建议进行修改,常修改的就是下面 4 个参数,我这里主要以我的机子会例进行建议,每个人机子情况不一,这里也只是做一个引子,最好的调整方式是你可以根据 jconsole 这类工具进行观察后个性化调整。 > >> * `-Xms128m`,16 G 内存的机器可尝试设置为 `-Xms512m` >> * `-Xmx750m`,16 G 内存的机器可尝试设置为 `-Xmx1500m` ->> * `-XX:MaxPermSize=350m`,16 G 内存的机器可尝试设置为 `-XX:MaxPermSize=500m` ->> * `-XX:ReservedCodeCacheSize=225m`,16 G 内存的机器可尝试设置为 `-XX:ReservedCodeCacheSize=500m` +>> * `-XX:MaxPermSize=350m`,16G 内存的机器可尝试设置为 `-XX:MaxPermSize=500m` +>> * `-XX:ReservedCodeCacheSize=225m`,16G 内存的机器可尝试设置为 `-XX:ReservedCodeCacheSize=500m` -![JVM配置说明](images/viii-a-configuration-files-2.jpg) +![JVM 配置说明](images/viii-a-configuration-files-2.jpg) > * 上图是 IntelliJ IDEA 一些属性配置,没有 32 位和 64 位之分,修改原则主要根据个人对 IntelliJ IDEA 的个性化配置情况来分析。常修改的就是下面 4 个参数: > @@ -44,7 +44,7 @@ ## 设置目录进行多台设置同步化处理 -![JVM配置说明](images/viii-a-setting-synchronize-1.jpg) +![JVM 配置说明](images/viii-a-setting-synchronize-1.jpg) > * 上图是我的个性化配置目录,我是存放在 F 盘,同时该目录也是在 360 同步盘中。这样做主要是为了让我的多台设置可以同时使用一个个性化配置,保证个人开发习惯,额外作用就是在服务器上一个备份作用。 > * 设置方式很简单,修改 `idea.properties` 属性文件中的 `idea.config.path` 值,我的机器为:`idea.config.path=F:/360SycDir/idea_config/config` diff --git a/introduce.md b/introduce.md index 59de3e11..4bf2bf75 100644 --- a/introduce.md +++ b/introduce.md @@ -13,7 +13,6 @@ > * [0xDBE](http://www.jetbrains.com/dbe/ "0xDBE 主要用于开发 SQL") 主要用于开发 SQL > * [Android Studio](http://developer.android.com/tools/studio/ "Android Studio 主要用于开发 Android") 主要用于开发 Android(Google 基本 IntelliJ IDEA 社区版进行迭代所以也姑且算上) - ## IntelliJ IDEA 介绍 > * IntelliJ IDEA 官网: @@ -26,7 +25,7 @@ IntelliJ IDEA 在 2015 年 06 月官网主页是这样介绍自己的: IntelliJ IDEA 对自己的定义是很清晰的,对于新人来讲可能还不太理解,可能还会有误会,认为它博而不精,但是对于老用户来讲应该是非常认可上面这句话的。通过下面功能表格,新人对于 IntelliJ IDEA 所具备的功能会有一个新的认识。 -如果用一句话来形容 IntelliJ IDEA,我会说:**IntelliJ IDEA 是目前所有IDE中最具备沉浸式的 IDE,没有之一**。 +如果用一句话来形容 IntelliJ IDEA,我会说:**IntelliJ IDEA 是目前所有 IDE 中最具备沉浸式的 IDE,没有之一**。 ## IntelliJ IDEA 主要功能介绍 diff --git a/keymap-introduce.md b/keymap-introduce.md index 55690391..6fb8d780 100644 --- a/keymap-introduce.md +++ b/keymap-introduce.md @@ -205,10 +205,12 @@ IntelliJ IDEA 的便捷操作性,快捷键的功劳占了一大半,对于各 |连按两次Shift|弹出 `Search Everywhere` 弹出层| ## 官网快捷键资料 + > * Windows / Linux: > * Mac OS X: ## 第三方快捷键资料 + > * 来自 eta02913: ## 快捷键修改 diff --git a/maven-project-introduce.md b/maven-project-introduce.md index f9447df3..3ee46372 100644 --- a/maven-project-introduce.md +++ b/maven-project-introduce.md @@ -60,7 +60,6 @@ > * 如上图 Gif 演示,通过 Maven 生命周期的命令进行编译和打包,及用 Maven 的 Tomcat 插件运行项目。 > * 虽然我们可以通过 Maven 组件进行项目的管理,但是这并不等同于我们可以完全抛弃 IntelliJ IDEA 的项目设置,比如我们在 `pom.xml` 文件中设置了 JDK 编译版本是 1.7,但是在项目的 `Ctrl + Shift + Alt + S` 配置中,我们配置的 JDK 是 1.8,那即使我们用 Maven 的编译工具或命令进行编译也是会调用 1.8的。还有即使我们在 `Ctrl + Shift + Alt + S` 配置中没有配置 Artifacts,在我们运行 Maven 的 Tomcat 插件的时候也会自动帮我们生成的。 - ## Maven 快速排查依赖包冲突 ![Maven 快速排查依赖包冲突](images/xxii-e-maven-dependent-exclude-1.jpg) diff --git a/theme-settings.md b/theme-settings.md index 51c5d442..1c1159da 100644 --- a/theme-settings.md +++ b/theme-settings.md @@ -17,7 +17,7 @@ > * 字体的审美上每个人不一样,但是如上一段说的,这里的自提修改是需要知道一个前提的,那就是你选择的那个字体必须含有中文,比如微软雅黑和宋体这类是包含中文的,而 `Courier New` 和 `Monaco` 这类只是单纯的英文字体。 > * 如果你选择的字体不包含中文,那可能会在很多位置上出现类似 `口口口口口` 这样的乱码问题,比如文件名含有中文、字体是中文名字的都会变成 `口口口口口`。 > * 在修改 IntelliJ IDEA 的主题字体的时候,不建议把自提调成很大,因为很多人遇到这样一种情况:显示器分辨率低,主题字体又大,在 IntelliJ IDEA 的某些操作的工具菜单、右键菜单选项中部分选项超出了分辨率显示范围,没办法被选中。当然了,如果你一定要把字体改大,又不用大分辨率显示器,那可以通过 IntelliJ IDEA 的 `Menus and Toolbars` 删除部分你认为用不到的菜单,但是一般不建议这样做。 -> * 还需要特别注意的时候,如果你是开着IntelliJ IDEA的时候,新装了一个字体的话,那必须重启IntelliJ IDEA之后才能在下拉列表找到新装的字体。 +> * 还需要特别注意的时候,如果你是开着 IntelliJ IDEA 的时候,新装了一个字体的话,那必须重启IntelliJ IDEA 之后才能在下拉列表找到新装的字体。 ### 代码编辑字体修改 diff --git a/vcs-introduce.md b/vcs-introduce.md index 16ffc490..5379c602 100644 --- a/vcs-introduce.md +++ b/vcs-introduce.md @@ -17,7 +17,6 @@ SVN 主要使用的版本有 1.6、1.7、1.8,最新的是 1.9。推荐大家使用 1.8 的。如果你的项目使用的是 1.6 的版本,在安装 1.8 之后是可以直接对项目文件进行升级的,所以无需担心,也因此更加推荐大家使用 1.8。 - > * Subversion 官网下载: > * TortoiseSVN 官网下载: @@ -64,7 +63,6 @@ Git 主要的版本有 1.X、2.X,最新的是 2.X,使用版本随意,但 > * 如上图标注 1 所示,支持创建 `Gist`。Github 的 Gist 官网地址: - ## 版本控制主要操作按钮 ![版本控制主要操作按钮](images/xvi-e-version-control-system-operation-introduce-1.jpg) @@ -89,7 +87,6 @@ Git 主要的版本有 1.X、2.X,最新的是 2.X,使用版本随意,但 > * 如上图标注 1 所示,菜单栏上的版本控制操作区。 - ## 版本控制相关的常用设置说明 ![版本控制相关的常用设置说明](images/xvi-f-version-control-system-settings-introduce-1.jpg) diff --git a/windows-install.md b/windows-install.md index 0d0cb909..37cff5ee 100644 --- a/windows-install.md +++ b/windows-install.md @@ -7,7 +7,7 @@ > * 内存:最低要求1G,推荐2G以上 > * 硬盘:最低要求2G > * 显示器:最低要求 1024 X 768 分辨率 -> * 更多信息可以阅读:https://www.jetbrains.com/idea/download/system_requirements.jsp?os=win +> * 更多信息可以阅读: ## 2.首次安装