Intellij Idea创建Maven项目

创建maven项目File-->New-->Project

Intellij Idea创建Maven项目

选择maven,勾选 create from archetype 选中webapp

Intellij Idea创建Maven项目

点击next进入下一步,填写GroupId和ArtifactId

Intellij Idea创建Maven项目

点击next进入下一步,选择之前下载好的本地maven;这里在Properties中添加一个参数archetypeCatalog=internal,不加这个参数的话,在maven生成骨架的时候将会非常慢,有时候会直接卡住。

archetypeCatalog表示插件使用的archetype元数据,不加这个参数时默认为remote,local,即*仓库archetype元数据,由于*仓库的archetype太多了,所以导致很慢,指定internal来表示仅使用内部元数据

Intellij Idea创建Maven项目

Intellij Idea创建Maven项目

点击next进入下一步,填写项目名称

Intellij Idea创建Maven项目

点击Finish按钮,完成了maven项目的创建

Intellij Idea创建Maven项目


配置maven项目,File--》Project Structure

选择安装的jdk

Intellij Idea创建Maven项目

在main文件下新建一个java文件夹,并将其设为源代码文件

Intellij Idea创建Maven项目

  • Sources 一般用于标注类似 src 这种可编译目录。有时候我们不单单项目的 src 目录要可编译,还有其他一些特别的目录也许我们也要作为可编译的目录,就需要对该目录进行此标注。只有 Sources 这种可编译目录才可以新建 Java 类和包,这一点需要牢记。
  • Tests 一般用于标注可编译的单元测试目录。在规范的 maven 项目结构中,*目录是 src,maven 的 src 我们是不会设置为 Sources 的,而是在其子目录 main 目录下的 java 目录,我们会设置为 Sources。而单元测试的目录是 src - test - java,这里的 java 目录我们就会设置为 Tests,表示该目录是作为可编译的单元测试目录。一般这个和后面几个我们都是在 maven 项目下进行配置的,但是我这里还是会先说说。从这一点我们也可以看出 IntelliJ IDEA 对 maven 项目的支持是比较彻底的。
  • Resources 一般用于标注资源文件目录。在 maven 项目下,资源目录是单独划分出来的,其目录为:src - main -resources,这里的 resources 目录我们就会设置为 Resources,表示该目录是作为资源目录。资源目录下的文件是会被编译到输出目录下的。
    Test Resources 一般用于标注单元测试的资源文件目录。在 maven 项目下,单元测试的资源目录是单独划分出来的,其目录为:src - test -resources,这里的 resources 目录我们就会设置为 Test Resources,表示该目录是作为单元测试的资源目录。资源目录下的文件是会被编译到输出目录下的。
  • Excluded 一般用于标注排除目录。被排除的目录不会被 IntelliJ IDEA 创建索引,相当于被 IntelliJ IDEA 废弃,该目录下的代码文件是不具备代码检查和智能提示等常规代码功能。

为Modules添加外部依赖的jar包

Intellij Idea创建Maven项目

添加tomcat的依赖是为了满足servlet和jsp依赖的,tomcat作为一个servlet容易提高了servlet和jsp的API

Intellij Idea创建Maven项目

Facets中的web设置,点击加号,选择Web,配置web.xml文件和webRoot文件路径

Intellij Idea创建Maven项目

Intellij Idea创建Maven项目

添加jar包依赖,点击加号,选择外部依赖的jar包位置

Intellij Idea创建Maven项目

配置Artifacts,在Aritifaces中有两个war,一个是war 一个是war exploded,在配置服务器时需要选择war exploded

千万要注意,这两个war都不应该是自己添加的,而是根据maven中的配置自己生成的。

没有这两个war的时候,都是自己创建,往往后果就是项目在编译后缺少jar包,依赖的jar没有自动拷贝。

其实Intellij中的mavan项目配置,都是依赖于pom中的配置,如果pom中的配置正确,就不需要修改项目的IDE配置。

  1. 首先pom要有<packaging>war</packaging>,如果pom中配置了这个,Aritifaces就会有上面的两个war

  2. 其次pom要有<build>    <finalName>test</finalName>  </build> 这个关系到上图中的output directory中的配置,finalName作为target下的项目目录,以及会创建对应名字的war包(比如test.war)

Intellij Idea创建Maven项目
配置tomcat
Intellij Idea创建Maven项目
Intellij Idea创建Maven项目