java – 构建WAR包时的Maven错误(web.xml丢失??)

在执行mvn安装时,我得到以下错误

Error assembling WAR: webxml attribute
is required (or pre-existing
WEB-INF/web.xml if executing in update
mode)

我的web应用程序结构树是这样的:

my-app
|-- pom.xml
|-- src
    |-- ...
    |-- WebContent
        |-- ...
        |-- meta-inf
        |-- WEB-INF
            |-- classes
                |-- ...
            |-- lib
            |-- **web.xml**

我的POM文件如下所示:

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>masters.traffic</groupId>
  <artifactId>traffic_web</artifactId>
  <packaging>war</packaging>
  <name>traffic_web</name>
  <version>0.1.0</version>
  <build>
        <sourceDirectory>src</sourceDirectory>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>                    
                </configuration>
            </plugin>
        </plugins>
  </build>

    ...
</project>

如何正确解决这个问题?

问候

解决方法

我强烈建议使用 Maven’s standard layout

>将Java源放入src / main / java(并删除sourceDirectory元素)
>将Web应用程序源放在src / main / webapp中
>删除WEB-INF下的类和lib目录

当然,您可以自定义布局,但这是IMO更多的麻烦和无用的努力而不是好处.只要按照惯例.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...