1.执行Maven install可能会报如下错误
[INFO] Packaging webapp
[INFO] Assembling webapp [JettyCode] in [/Users/fandong/eclipse-workspace/JettyCode/target/JettyCode-0.0.1-SNAPSHOT]
[INFO] Processing war project
[INFO] Copying webapp resources [/Users/fandong/eclipse-workspace/JettyCode/src/main/webapp]
[INFO] Webapp assembled in [19 msecs]
[INFO] Building war: /Users/fandong/eclipse-workspace/JettyCode/target/JettyCode-0.0.1-SNAPSHOT.war
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war
(default-war) on project JettyCode: Error assembling WAR: webxml attribute is
required (or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1]
通过以上的错误可以看到Maven默认会去src\main\webapp下去找web.xml,而我们项目经常会改为WebRoot目录代替src\main\webapp目录,那么我们就需要自己重新配置一下web.xml路径;
pom.xml配置如下:
<!-- 配置web.xml文件的配置 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
<configuration>
<!-- 指定web.xml的路径 -->
<webXml>WebRoot\WEB-INF\web.xml</webXml>
<!-- 指定jsp、js、css的路劲 -->
<warSourceDirectory>WebRoot</warSourceDirectory>
</configuration>
</plugin>
指定我们自己配置web.xml路径
<webXml>WebRoot\WEB-INF\web.xml</webXml>
默认打包所有相关资源路径不配置的情况下都默认在src\main\webapp目录下,不在webapp目录下的情况,需要我们自己配置打包时需要把jsp、html、css、js都打包到war包的路径,就需要配置资源存放的路径
<warSourceDirectory>WebRoot</warSourceDirectory>