|
28 | 28 |
|
29 | 29 | > * 如上图红圈所示,我们可以根据对项目的任意目录进行这五种目录类型标注,这个知识点非常非常重要,必须会。
|
30 | 30 | >> * `Sources` 一般用于标注类似 `src` 这种可编译目录。有时候我们不单单项目的 `src` 目录要可编译,还有其他一些特别的目录也许我们也要作为可编译的目录,就需要对该目录进行此标注。只有 `Sources` 这种可编译目录才可以新建 Java 类和包,这一点需要牢记。
|
31 |
| ->> * `Tests` 一般用于标注可编译的单元测试目录。在规范的 maven 项目结构中,顶级目录是 `src`,maven 的 `src` 我们是不会设置为 `Sources` 的,而是在其子目录 `main` 目录下的 `java` 目录,我们会设置为 `Sources`。而单元测试的目录是 `src - test - java`,这里的 `java` 目录我们就会设置为 `Tests`,表示该目录是作为可编译的单元测试目录。一般这个和后面几个我们都是在 maven 项目下进行配置的,但是我这里还是会先说说。从这一点我们也可以看出 IntelliJ IDEA 对 maven 项目的支持是比彻底的。 |
| 31 | +>> * `Tests` 一般用于标注可编译的单元测试目录。在规范的 maven 项目结构中,顶级目录是 `src`,maven 的 `src` 我们是不会设置为 `Sources` 的,而是在其子目录 `main` 目录下的 `java` 目录,我们会设置为 `Sources`。而单元测试的目录是 `src - test - java`,这里的 `java` 目录我们就会设置为 `Tests`,表示该目录是作为可编译的单元测试目录。一般这个和后面几个我们都是在 maven 项目下进行配置的,但是我这里还是会先说说。从这一点我们也可以看出 IntelliJ IDEA 对 maven 项目的支持是比彻底的。 |
32 | 32 | >> * `Resources` 一般用于标注资源文件目录。在 maven 项目下,资源目录是单独划分出来的,其目录为:`src - main -resources`,这里的 `resources` 目录我们就会设置为 `Resources`,表示该目录是作为资源目录。资源目录下的文件是会被编译到输出目录下的。
|
33 | 33 | >> * `Test Resources` 一般用于标注单元测试的资源文件目录。在 maven 项目下,单元测试的资源目录是单独划分出来的,其目录为:`src - test -resources`,这里的 `resources` 目录我们就会设置为 `Test Resources`,表示该目录是作为单元测试的资源目录。资源目录下的文件是会被编译到输出目录下的。
|
34 |
| ->> * `Excluded` 一般用于标注排除目录。被排除的目录不会被 IntelliJ IDEA 创建索引,相当于被 IntelliJ IDEA 废弃,该目录下的代码文件是不具备代码检查和智能提示等常规代码功能。 |
| 34 | +>> * `Excluded` 一般用于标注排除目录。被排除的目录不会被 IntelliJ IDEA 创建索引,相当于被 IntelliJ IDEA 废弃,该目录下的代码文件是不具备代码检查和智能提示等常规代码功能。 |
35 | 35 | >> * 通过上面的介绍,我们知道对于非 maven 项目我们只要会设置 `src` 即可。
|
36 | 36 |
|
37 | 37 | > * 如上图箭头所示,被标注的目录会在右侧有一个总的概括。其中 `classes` 虽然是 `Excluded` 目录,但是它有特殊性,可以不显示在这里。
|
|
43 | 43 |
|
44 | 44 | 
|
45 | 45 |
|
46 |
| -> * 如上图红圈所示,这里显示项目的所有依赖包,其中红色表示 IntelliJ IDEA 无法识别。IntelliJ IDEA 支持一个一个导入依赖包,也支持直接导入一个目录下的所有依赖包。上图的这种就是一个一个具体化的依赖包,除非个表包有存在依赖顺序关系,不然不建议一个一个引入,这样比较麻烦。所以我这里会先把这些零散的依赖包全部去除掉,然后按目录来引入。 |
| 46 | +> * 如上图红圈所示,这里显示项目的所有依赖包,其中红色表示 IntelliJ IDEA 无法识别。IntelliJ IDEA 支持一个一个导入依赖包,也支持直接导入一个目录下的所有依赖包。上图的这种就是一个一个具体化的依赖包,除非多个表包有存在依赖顺序关系,不然不建议一个一个引入,这样比较麻烦。所以我这里会先把这些零散的依赖包全部去除掉,然后按目录来引入。 |
47 | 47 | > * 如上图标注 1 所示,依赖包支持这五种操作。
|
48 | 48 | >
|
49 | 49 | >> * 加号,表示可以引入新依赖包。
|
50 | 50 | >> * 减号,表示可以去除对应的依赖包。
|
51 | 51 | >> * 向上箭头,表示依赖包可以向上移动位置。依赖包越上面的表示在项目加载的时候越是优先,所以对于同一个依赖包,不同版本,依赖顺序不同,结果可能也是很有会不同的。
|
52 | 52 | >> * 向下箭头,表示依赖包可以向下移动位置,原因同上。
|
| 53 | +>> * 笔,表示可以编辑依赖包的名称和路径。 |
53 | 54 |
|
54 | 55 | 
|
55 | 56 |
|
|
61 | 62 |
|
62 | 63 | 
|
63 | 64 |
|
64 |
| -> * 如上图标注 1 所示,引入刚刚放置好的 `Libraries` 下 `lib` 依赖包。 |
| 65 | +> * 如上图标注 1 所示,引入刚刚放置好的 `Libraries` 下 `lib` 依赖包。 |
65 | 66 |
|
66 | 67 | 
|
67 | 68 |
|
68 |
| -> * 对于传统的 Java Web 项目,我们一般还需要指定配置 web.xml 位置。如上图 Gif 演示,这个一般在 `Facts` 中进行配置。`Facts` 可以理解为用于配置项目的框架区,在这里管理项目使用的框架配置文件。这个是 IntelliJ IDEA 特有的一个配置点。 |
| 69 | +> * 对于传统的 Java Web 项目,我们一般还需要指定配置 web.xml 位置。如上图 Gif 演示,这个一般在 `Facts` 中进行配置。`Facts` 可以理解为用于配置项目的框架区,在这里管理项目使用的框架配置文件。这个是 IntelliJ IDEA 特有的一个配置点。 |
69 | 70 | > * 除了 web.xml 一般我们要配置外,其他一些框架,即使我们不在这里配置也是不会影响项目的运行的,但是是有缺点的。比如我们项目中一般都是有 Spring 框架的,而 Spring 是有很多配置文件的,如果我们在这里进行了配置,那你会发现 IntelliJ IDEA 编辑区底部会多出现几个跟 Spring 项目的设置区,原因就是你告诉了 IntelliJ IDEA,你的项目使用了 Spring 框架,那 IntelliJ IDEA 就会出现其对应的配置功能给你。Hibernate 等其他框架道理一样。
|
70 | 71 |
|
71 | 72 | 
|
|
92 | 93 | >> * `On Update action` 当我们按 `Ctrl + F10` 进行容器更新的时候,可以根据我们配置的这个事件内容进行容器更新。其中我选择的 `Update classes and resources` 事件是最常用的,表示我们在按 `Ctrl + F10` 进行容器更新的时候,我们触发更新编译的类和资源文件到容器中。在 Debug 模式下,这个也就是所谓的 `HotSwap`。这是这种热部署没有 JRebel 插件那样好用。
|
93 | 94 | >> * `On frame deactivation` 当我们切换 IntelliJ IDEA 到浏览器的时候进行指定事件更新,这个一般是因为 Web 开发的时候,我们需要经常在 IntelliJ IDEA 和各个浏览器之间来回切换测试,所以才有了这种需求。IntelliJ IDEA 是为了帮我们在做这种无聊切换的时候做一些指定事情。当然了,如果切换过于频繁,这个功能还是很耗资源的,所以我设置的是 `Do nothing` 表示切换的时候什么都不做。
|
94 | 95 | > * 如上图标注 4 所示,默认 Tomcat 的 HTTP 端口是 8080,如果你需要改其端口可以在这里设置。
|
95 |
| -> * 如上图标注 5 所示,这个知识点在前面的文章已经有讲过了。这里表示在 Tomcat 容器运行前做什么事情,这里分别了:Make 和 Build Artifacts 操作。如上面 Gif 演示,这里的 `Build Artifacts` 是我们在 `Deployment` 选项卡中添加了 Artifact 之后自动出现的。 |
| 96 | +> * 如上图标注 5 所示,这个知识点在前面的文章已经有讲过了。这里表示在 Tomcat 容器运行前做什么事情,这里分别了:Make 和 Build Artifacts 操作。如上面 Gif 演示,这里的 `Build Artifacts` 是我们在 `Deployment` 选项卡中添加了 Artifact 之后自动出现的。 |
96 | 97 |
|
97 | 98 | ## Tomcat 启动
|
98 | 99 |
|
@@ -136,5 +137,3 @@ FLUSH PRIVILEGES;
|
136 | 137 |
|
137 | 138 | > * 如上图 Gif 所示,除了在 Artifacts 中需要配置,还需要在容器中也跟着配置,这样在启动容器的时候才会输出一个 war 压缩包。
|
138 | 139 | > * 通过配置,我们也知道 war 的压缩包本质是根据展开的 war 输出包进行压缩的得来。
|
139 |
| -
|
140 |
| - |
0 commit comments