######1.通过 Eclipse 构建 Maven 项目

    1. 创建简单 Maven 项目

File -> New -> Ohter -> Maven
选中 Maven Project 并点击 Next ,到下一个对话框继续点击 Next ,再新对话框中选择 maven-archetype-quickstart,点击 Next
填写好 groupId, artfactId, version 等信息,点击 Finish。

    1. 创建 Maven Web 项目

操作和简单 Maven 项目基本一样,只是在选择 maven-archetype 时选择 maven-archetype-webapp

创建完成后,右击项目,点击 Properties -> Project Facets,修改 JavaDynamic Web Module 为我们所需的版本。

也可通过修改 {my-app-web}/.settings/org.eclipse.wst.common.project.facet.core.xml 文件来实现。

######2.Eclipse 下 部署 Maven 项目到 Tomcat (以 Tomcat7 为例)

    1. Tomcat 认证

添加具有角色管理器GUI和管理脚本的用户。修改 %TOMCAT7_PATH%/conf/tomcat-users.xml 文件

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
	<role rolename="manager-gui"/>
	<role rolename="manager-script"/>
	<user username="admin" password="password" roles="manager-gui,manager-script" />
</tomcat-users>
    1. Maven 认证

添加在上面 Maven 设置文件的 Tomcat 用户,Maven 要使用此用户来登录Tomcat服务器。

文件位置 %MAVEN_PATH%/conf/settings.xml

<?xml version="1.0" encoding="UTF-8"?>
<settings ...>
	<servers>	   
		<server>
			<id>TomcatServer</id>
			<username>admin</username>
			<password>password</password>
		</server>
	</servers>
</settings>
    1. 声明一个Maven的Tomcat插件。

修改 pom.xml,在 <build><plugins> 下加入

	<plugin>		<groupId>org.apache.tomcat.maven</groupId>
		<artifactId>tomcat7-maven-plugin</artifactId>
		<version>2.2</version>
		<configuration
<url>http://localhost:8080/manager/text</url>
			<server>TomcatServer</server>
			<path>/maven</path>
		</configuration>
	</plugin>

感觉是我的 Eclipse Maven 配置的有问题,即使修改了 settings.xml,还是会报 401 Unauthorized 错误,固又在上面的 <configuration> 中添加了一下配置。

<username>admin</username>			<password>password</password>			
    1. 怎么运行的?

在部署过程中,它告诉 Maven 通过部署 WAR 文件Tomcat服务器, http://localhost:8080/manager/text , 在路径 /maven 上, 使用 TomcatServer (settings.xml) 用户名和密码来进行认证。

    1. 发布到Tomcat

以下的命令是用来操纵 Tomcat WAR 文件。

mvn tomcat7:deploy 
mvn tomcat7:undeploy 
mvn tomcat7:redeploy

Q.E.D.


Think Big, Act Small