# Maven 创建 Java Web 项目

## 创建Java 项目

1. 选择"File" --> "New"-->"Project"
2. &#x20;选择Maven, 再选择 JDK 版本, 勾选下面的”Create from archetype", 选择”\~:maven-archetype-webapp“, 点击"Next"&#x20;
3. 设置GroupId 和 Artifactic. GroupId 和 package 命名规则类似， 如果是公司则用域名倒序 com.xxx, 如果是个人则用 indi.xxx。 Artifactic和工程名相同。点击"Next"。
4. 检查 Maven 配置, 也就是上一节讲到的三个地方: Maven 安装路径, Maven配置文件和Maven本地仓库路径。点击"Finish"

随后IDEA为我们创建了一个 Java Web 工程。

## 看一眼pom.xml

让我们来看一眼pomxml文件到底是什么。

```xml
<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>indi.chester</groupId>
  <artifactId>Maven1</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>war</packaging>

  <name>Maven1 Maven Webapp</name>
  <!-- FIXME change it to the project's website -->
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <finalName>Maven1</finalName>

    

  </build>
  
</project>

```

* 首先来看properties标签, 这里主要定义了当前工程的JDK版本, 务必确保和计算机上装的版本相同
* 再看dependencies标签，这是最重要的标签之一，里面包含了当前项目的所有依赖。比如这里有一个junit的依赖，版本为1.11. 我们可以修改为自己想要的版本，比如修改为1.12. 随后不需要我们手动下载，IDEA会自动根据这个标签的修改而自动更新maven本地仓库。
* build标签，会放一些全局性的配置，比如fileName会指定目标文件名，一般和工程名相同。

## 添加 TomCat 插件

在maven工程里面，我们无需自己手动下载 TomCat, 只需要在build标签里面额外添加一个plugin插件即可完成所有配置。修改后的build标签如下：

```xml
<build>
    <finalName>Maven1</finalName>

    <plugins>
      <!-- Tomcat 插件 -->
       <plugin>
         <groupId>org.apache.tomcat.maven</groupId>
         <artifactId>tomcat7-maven-plugin</artifactId>
         <version>2.1</version>
         <configuration>
           <port>8888</port>
           <path>/test</path>
           <uriEncoding>UTF-8</uriEncoding>
           <server>tomcat</server>
         </configuration>
       </plugin>
    </plugins>

  </build>
```

修改完之后，IDEA 会为我们自动下载所需的插件或者依赖，当POM.xml里面出现红色的字段，一般表示还没有下载好，一般稍等一会即可。

我们需要创建一个运行Java Web 的图形化按钮。与之前创建 maven compile 类似，右键IDEA右上角绿色锤子旁边下拉框，选择"Edit Configurations”， 点击左上角的 “+”， 选择Maven。将Name框设置为 Tomcat\_Run, Command line 设置为 tomcat7.run， working directory确保和工程目录相同，点击"OK"即可。

## 运行起来

点击右上角的 TomCat\_Run, 控制台输出 \[INFO] Running war on <http://localhost:8888/test。> 打开这个网址，即可看到网页输出 Hello World! , 也就是src/main/webapp/index.jsp的输出。学过TomcCat的你一定不会陌生哈。
