在 Eclipse 中创建一个支持 Maven 的 Java Web 项目听起来很简单,因为 Eclipse 对 Maven 有很好的支持,但实际上并没有。您可以通过单击菜单File > New > Maven Project为 Java webapp 创建一个 Maven 项目(您需要切换到 Java EE 透视图才能看到此菜单)。
在出现的New Maven Project对话框中,单击 Next。然后你会看到一个可供选择的内置archetype(Maven项目的类型)列表,如下图所示:
我测试了所有这些原型,但没有一个可以生成正确配置的基本 Java Web 项目。因此,这是在 Eclipse 中使用 Maven 支持创建 Java Web 项目的正确方法:
首先,像往常一样创建一个新项目,单击File > New > Dynamic Web Project:
然后按照向导正常创建 Java 动态 Web 项目。新创建的项目如下所示:
现在,右键单击项目名称,然后单击配置 > 转换为 Maven 项目:
然后在Create new POM对话框中,输入 Maven 项目的基本信息,例如 Group Id、artifact Id、版本、名称和描述:
请注意,打包类型默认为war,因为这是一个Java Web 项目,它将被打包到一个WAR 文件中进行部署。
然后单击完成。您将项目的图标更新为“M”字母——表明它是一个 Maven 项目:
您还可以看到在项目的根目录中生成了pom.xml文件。它是 Maven 使用的项目对象模型配置文件。
现在编辑pom.xml文件以指定 Java Servlet API 的依赖项:
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
编写使用 Servlet API 的代码(例如 servlet 类)需要此依赖项。pom.xml文件的全部内容如下所示:
<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>net.codejava</groupId>
<artifactId>MyJavaWebApp</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.1</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
现在您有了一个支持 Maven 的 Java 动态 Web 项目。快乐编码!