Maven学习笔记-03-Eclipse和Maven集成

  本文使用 Eclipse 集成 Maven,并创一个基于 maven的web工程

一 环境版本信息

本文使用的版本信息如下:

Eclipse Version: Mars.1 Release (4.5.1)

Maven Version: Apache maven 3.2.1

Jave Version : 1.7.0_25+

二 创建一个Web项目

1)打开eclipse  选择 File --> New --> Other -->Maven -->Maven Projet

2)选择maven-archetype-webapp

3)填写项目信息

4)生产的Web项目包结构

 

4.1)把项目转为 Dynamic Web Module,在项目上点击右键,选择属性,然后选择Project facets,然后点击Convert to faceted form...
勾选Dynamic Web Module,选择3.0,表示支持servlet3.0
勾选Java,选择1.7或更高的jdk版本

   但是Eclipse会报 "Cannot change version of project facet Dynamic Web Module to 3.0"异常。需要找到工程项目的硬盘目录,打开项目下的 .setting文件夹,如下图:

     找到 .setting文件夹内的org.eclipse.wst.common.project.facet.core.xml文件,文件格式大致如下:

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="java" version="1.5"/>
  <installed facet="jst.web" version="2.3"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>

    直接修改jst.web对应的version即可,比如: <installed facet="jst.web" version="3.0"/> ,表示支持 servlet 3.0版本。修改后在进入界面如下图所示:

4.2)工具只生成了一个叫 src/main/resources的source folder,需要手工添加 src/main/java、src/test/java和src/test/resources 三个source folder,在项目上右键 New -->Source Folder,输入folder name即可。但项目会报 The folder is already a source folder的错误。一共需要以下四个目录:

src/main/java
src/main/resources
src/test/java
src/test/resources

注意:在执行此步之前,需要点击项目,右键鼠标选择 Properties --> Java Build Path --> Source 会看到src/main/java已存在,但是Missing。所以只需要创建目录,Source Floder就出现了。

解决方法:是哪一个 Folder报Missing错误就把它删除掉,然后在重新手工添加 ,比如 src/main/java。

 

 

4.3)配置部署的程序Deployment Assembly,删掉test的那两项,test的程序发布的时候不需要,添加maven的依赖库,发布的时候可以发布到lib目录中,添加/src/main/webapp为部署的根目录

5)配置tomcat8,发布运行项目

  如果使用的是MyEclipse创建的Maven Web工程,使用了默认的artifactId模板,那么创建的项目会出现空格,那么可以按照如下方式,修改模板的配置。

6) Eclipse 配置Maven命令

  在项目右击选择 Run As -> Run Configurations ...

  在弹出的窗口,在Goals写入必要的Maven命令 jetty:run,比如运行嵌入式服务器Jetty, 对应的Maven命令 mvn jetty:run

 

补充资料:

1, 内置Servlet Container

Java服务器支持的Servlet 版本号和Java版本号之间的关系。

 NameServlet VersionJava Version

Tomcat 8

3.1

Java 7+

Tomcat 7

3.0

Java 6+

Jetty 9.3

3.1

Java 8+

Jetty 9.2

3.1

Java 7+

Jetty 8

3.0

Java 6+

Undertow 1.3

3.1

Java 7+

 

 

posted @ 2016-06-10 00:01  陈晓楠  阅读(261)  评论(0编辑  收藏  举报