在ECLIPSE 右边的Package Explorer用鼠标右击选择: New ---> Other.. 弹出出下对话框:
选择 Maven Project 点击 Next >
点击Next >
找到maven-archetype-webapp 点击Next>
Group Id : 表示此项目生成本地maven仓库的包名称(例:C:\Users\Administrator\.m2\repository\com.maomao.ExtjsDemo)
Artifact Id: 表示此项目的名称
Version : 项目的版本号
Package: 项目里面生成的包名称(不填的话表示不生成包名称)
完成之后点击Finish
现在可以看到我们创建的项目架子如下:
发现index.jsp 有一个错误信息:
解决方法很简单,在pom.xml增加如下配置(增加到<dependencies>增加到这里面</dependencies>):
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
完成之后如下图,红叉消息:
右击此项目,选择New -->Source Folder(注意不是Folder,不要选错)
在Folder name 输入 :src/main/java 发现提示错误信息,这个文件夹已经存在,
解决方法如下:
右击项目 ,选择Build Path -->Configure Build Path..
删除ExtjsDemo/src/main/java 和 ExtjsDemo/src/test/java
点击ok
再回到之前的操作:
右击此项目,选择New -->Source Folder(注意不是Folder,不要选错)
Folder name : src/main/java 点击Finish
再创建一个源文件夹
Folder name : src/test/java 点击Finish
把webapp目录放到项目的根项目下面
完成效果如下图:
一般我们运行web项目的时候,java的编译生成的*.class是放到webapp/WEB-INF/classes,但是maven项目他会自动生成到target目录下,所以这时候我们还得修改一下他的编译路径.操作如下:
右击项目 ,选择Build Path -->Configure Build Path..
完成之后点击OK
这时候我新建一个类,测试main方法的时候,发现报如下错误:
错误信息是他找不到这个类,为什么会这样呢?我明明有这个类了, 这是因为他执行*.class文件的时候找的是target目录下,因为此目录下没有这个class字节码文件,所有报错,解决方法也很简单,操作如下:
在pom.xml文件里面增加(在<build>这里</build>):
<outputDirectory>webapp/WEB-INF/classes</outputDirectory>
增加完成之后,再次执行,控制台输入正常
此时MAVEN构建WEB项目大功告成!