转自:http://www.gogogogo.me/development/eclipse-maven-webapp.html
Apache Maven是一个优秀的项目构建和管理工具,许多开源项目都使用Maven进行构建。由于最近工作中要用到Maven,于是这里记录下在Eclipse中使用Maven插件创建一个基于Servlet3.0的Java Web项目的过程,欢迎大家指正。
- 下载Maven:在Apache官方网站http://maven.apache.org/download.cgi 下载Maven3.1.1,解压后放在E:/maven目录下E:\maven\apache-maven-3.1.1;
- 配置环境变量:在我的电脑>属性>高级>环境变量>系统变量>新建:变量名:M2_HOME ,变量值:F:\maven\apache-maven-3.0.3,然后将在path环境变量值尾部加入:;%M2_HOME%\bin;
- 检查配置:运行>cmd,在命令行中输入: mvn -v 命令检查配置,Maven在运行时需要使用到JDK,所以安装JDK是前提条件了。如果没有提示错误信息,maven安装完成;
- 修改仓库位置:Maven默认的仓库位置当前用户目录的 .m2/repository 目录,为了便于管理,将仓库位置配置到E:/maven下的/repository目录,用文本编辑器打开E:\maven\apache-maven-3.1.1\conf 下的settings.xml ,在<settings>节点下添加本地仓库的位置<localRepository>E:/maven/repository</localRepository> ,如图下图;
到这里,Maven就安装好了,可以在命令行下使用Maven了,下面要做的就是把Maven集成到Eclipse中。
- 安装m2e插件:Eclipse Kepler以后版本都集成了m2e插件,如果没有集成可以到m2e官网下载安装:http://www.eclipse.org/m2e/;
- 配置m2e插件:安装完插件后,在Window>Preferences>Maven>Installations 中去掉m2e内置的maven,点击右边Add按钮,选择上边安装好的apache-maven-3.1.1 ,然后勾选,apply,如图;
- 配置用户设置:将E:\maven\apache-maven-3.1.1\conf 下的settings.xml 文件复制到E:/maven目录下,改名为user_settings.xml ,在Window>Preferences>Maven>User Settings中选择该文件,当然那个文件只配置了仓库位置,还可以配置其他参数,这个配置文件是用户配置文件,而/conf 下的settings.xml 则是Maven的全局配置文件;
到这里,就将Maven集成进了Eclipse中,就可以使用Eclipse的可视化界面使用Maven了。
- 创建支持Java Servlet3.0的Maven Webapp项目:
- 创建Maven webapp:File>New>Maven Project>Next Archetype选择maven-archetype-webapp下一步,填写项目信息,finish,如图;
- 完善项目src目录结构:由于标准的Maven webapp项目src/(main(java、resources、webapp),(test(java、resources))),而创建的项目main下缺少java目录,也没有test目录,这里分别创建;
- 修改webapp的版本:默认创建的webapp的版本2.3,这里需要修改成支持Servlet3.0的webapp3.0。在workspace中找到HelloMaven项目,编辑/HelloMaven/.settings/org.eclipse.wst.common.project.facet.core.xml, 将<installed facet="java" version="1.5"/> ,<installed facet="jst.web" version="2.3"/>改为<installed facet="java" version="1.6"/> ,<installed facet="jst.web" version="3.0"/>。再Eclipse打开项目的pom.xml文件,在<build>节点下添加如下配置:
03 |
< artifactId >maven-compiler-plugin</ artifactId > |
04 |
< version >3.0</ version > |
右键项目
Maven>Update Project更新项目,然后
Properties>Project Facets中,将
Dynamic Web Module改为
3.0、
Java改为
1.6、右边
Runtimes选择
Tomcat7.0(Servlet3.0需要Tomcat7.0+),如图。
最后删掉src/main/webapp/WEB-INF/web.xml,再次Maven>Update Project更新项目。
01 |
@WebServlet ( "/helloMavenWebapp" ) |
02 |
public class HelloMavenWebappServlet extends HttpServlet{ |
03 |
private static final long serialVersionUID = 8963265462953694987L; |
05 |
public void doGet(HttpServletRequest req, HttpServletResponse resp) |
06 |
throws ServletException, IOException { |
07 |
resp.getWriter().println( "Get:/helloMavenWebapp" ); |
11 |
public void doPost(HttpServletRequest req, HttpServletResponse resp) |
12 |
throws ServletException, IOException { |
13 |
resp.getWriter().println( "Post:/helloMavenWebapp" ); |
终于将使用Maven构建的Java Web项目创建成功了,更多关于Maven的配置和使用正在学习中,欢迎大家指正!