1、环境介绍 
maven:apache-maven-3.0.3 
tomcat:apache-tomcat-6.0.32 
jdk:jdk1.5.0_11 
eclipse:3.7.2

2、配置tomcat-maven-plugin 
在pom.xml中加入如下配置

Xml代码  
  1. <plugin>
  2. <groupId>org.codehaus.mojo</groupId>
  3. <artifactId>tomcat-maven-plugin</artifactId>
  4. <version>1.1</version>
  5. <configuration>
  6. <server>tomcat-6.0.32</server>
  7. <url>http://127.0.0.1:8080/manager</url>
  8. <uriEncoding>${encoding}</uriEncoding>
  9. <warSourceDirectory>WebContent</warSourceDirectory>
  10. </configuration>
  11. </plugin>

说明:

  • tomcat-maven-plugin现在已拆分成tomcat7-maven-plugin和tomcat6-maven-plugin了,而groupId也由org.codehaus.mojo改为org.apache.tomcat.maven。详情可参考:http://tomcat.apache.org/maven-plugin-2.0/

3、集成tomcat测试的方法 
方法一(推荐): 
运行mvn tomcat:run命令,启动内嵌的tomcat进行测试 
1) 可在命令行直接运行mvn tomcat:run命令 
2) 如果使用eclipse,可通过maven的eclipse插件m2e新增一个maven build运行tomcat:run命令,如图:

方法二: 
运行mvn tomcat:redeploy命令,将web应用发布到外部已启动的tomcat进行测试 
1) 在maven的文件里加入如下设置:

Xml代码  
  1. <server>
  2. <id>tomcat-6.0.32</id>
  3. <username>tomcat</username>
  4. <password>tomcat</password>
  5. </server>

2) 在tomcat/conf的tomcat-users.xml加入如下配置:

Xml代码  
  1. <role rolename="manager-gui"/>
  2. <role rolename="manager-script"/>
  3. <user username="tomcat" password="tomcat" roles="manager-gui, manager-script"/>

3) 启动tomcat 
4) 类似方法一那样执行tomcat:redeploy命令

方法三(不推荐): 
增加eclipse web工程支持,利用传统的eclipse集成tomcat测试的方法进行测试。此方法其实跟maven和tomcat-maven-plugin无关,发布到tomcat下测试的war包不一定跟maven构建的包一致,因此不推荐。 
1) 在工程属性里的Project Facets里勾上Dynamic Web Module,如下图:

2) 在Deployment Assembly增加将maven依赖发布到“WEB-INF/lib”下,并将“/src/test/java”和“/src/test/resources”两项删除(因为maven打包时是不会打包这两部分内容的)

3) 这样便可以利用传统的eclipse集成tomcat测试的方法进行测试了,如下图:

补充: 
如果是多模块工程,只需在父工程下运行tomcat-maven-plugin的goal即可。如:D:\<父工程目录>>tomcat:run。tomcat-maven-plugin会自动检测和替换相关的依赖。

Text代码  
  1. NOTE If you have a multi module Maven projects and use Maven3, you don't need to install all modules before use the run goal, just use tomcat6/7:run from the root module and the plugin will auto detect build output directory from various modules and replace dependencies with those directories in the webapp classloader.

更多关于tomcat-maven-plugin的使用,请参考:

http://vivus.iteye.com/blog/1561664

http://mojo.codehaus.org/tomcat-maven-plugin/index.html  
http://tomcat.apache.org/maven-plugin-2/index.html

maven集成tomcat进行web应用测试相关推荐

  1. Idea+Maven+Jersey2+Tomcat配置Web服务

    Idea+Maven+Jersey2+Tomcat配置Web服务 关于在Idea中使用Maven来管理配置Jersey2服务的文章有很多,本文主要总结自己踩过的一些坑,希望对大家有所帮助. 基本环境配 ...

  2. eclipse集成tomcat运行web时提示引入jar包的类找不到的解决办法

    在eclipse集成tomcat开发web时,java类引入的jar包,编译通过,但启动tomcat运行web时提示找不到jar包内的类,需要作如下配置,将jar包在部署到集成的tomcat环境中. ...

  3. 如何在 IntelliJ IDEA 中整合 Maven、Tomcat 部署 Web 应用

    如何在 IntelliJ IDEA 中整合 Maven.Tomcat 部署 Web 应用 笔者的环境: JDK 11.0.12 Maven 3.6.3 Tomcat 9.0.41(Servlet 4. ...

  4. maven集成tomcat插件启动报错

    十一月 16, 2018 2:11:28 下午 org.apache.coyote.AbstractProtocol init 信息: Initializing ProtocolHandler [&q ...

  5. Maven 集成Tomcat插件(引用)

    Maven已经是Java的项目管理标配,如何在JavaEE开发使用Maven调用Web应用,是很多同学关心的问题.本文将介绍,Maven如何介绍Tomcat插件. Maven Tomcat插件现在主要 ...

  6. 不使用 Maven 等构建工具,而使用原始方法在 IntelliJ IDEA 中整合 Tomcat 部署 Web 应用

    不使用 Maven 等构建工具,而使用原始方法在 IntelliJ IDEA 中整合 Tomcat 部署 Web 应用   我们知道,部署 Web 应用可以直接将 Web 应用的文件夹置于 Tomca ...

  7. 内置在maven项目的服务器,IDEA使用maven中tomcat插件来启动服务器配置

    一 .在项目pom文件中配置tomcat 先添加如下配置: org.apache.maven.plugins maven-compiler-plugin 2.3.2 1.7 1.7 org.apach ...

  8. Tomcat6.0.13下配置Tomcat Administration Web Application

    Tomcat 5.5 以后的binary 核心安装版不再集成Tomcat Administration Web Application,需要独立下载安装.而Tomcat 6.0.13的Administ ...

  9. 使用Maven自动部署Java Web项目到Tomcat问题小记

    导读 首先说说自己为啥要用maven管理项目,一个直接的原因是:我在自己电脑上开发web项目,每次部署到服务器上时都要经历如下步骤: 首先在Eclipse里将项目打包成war包 将服务器上原来的项目文 ...

最新文章

  1. Laravel 底层是如何处理 HTTP 请求的?
  2. 机器学习基础:朴素贝叶斯及经典实例讲解
  3. 非Java程序员转行Java-day01-入门基础
  4. 线上学python哪家好-广州学Python学校哪家好
  5. 交换机是如何对数据包打标签去标签的_如何使用PC抓带vlan标签的数据包?王海军老师告诉你...
  6. 消息队列工具类(MSMQ)
  7. 在MAC下搭建JSP开发环境
  8. SAP ABAP和Java里的弱引用(WeakReference)和软引用(SoftReference)
  9. mysql 外键(foreign key)的详解和实例_MySQL数据库外键
  10. 团队作业——项目Alpha版本发布
  11. 从RAID看垂直伸缩到水平伸缩的演化
  12. ROS修改pkg名和node名教程
  13. 将sql 结果导出到文件
  14. mac下hive-1.2.2-src版本的编译
  15. HTML5之美一 --- 转载
  16. Java入门之窗口,精细全方位讲解,快乐学java铁铁们!
  17. 海龟编辑器怎么运行html,怎么使用海龟编辑器
  18. java 指定垃g1圾收集_【译】Java 14 Hotspot 虚拟机垃圾回收调优指南
  19. 免费打造个人网站,免费域名,免费空间,ftp使用,数据库等,免费就能搭建个人网站
  20. 面试准备(常见问题)

热门文章

  1. 样式超出设定宽度显示显示省略号
  2. python中import os_python import os
  3. SDN/NFV 网络技术系列文章
  4. esp32-cam的原理图
  5. altium designer布线调整时不自动删除旧线
  6. zabbix 自定义 key (转)
  7. 0821Cache Buffers chains与共享模式疑问4
  8. Eclipse非常有用的快捷键
  9. OpenSSL生成自签名的sha256泛域名证书
  10. 跨域资源共享的10种方式(转)