`
vivus
  • 浏览: 116837 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

maven集成tomcat进行web应用测试

阅读更多
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中加入如下配置
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>tomcat-maven-plugin</artifactId>
				<version>1.1</version>
				<configuration>
					<server>tomcat-6.0.32</server>
					<url>http://127.0.0.1:8080/manager</url>
					<uriEncoding>${encoding}</uriEncoding>
					<warSourceDirectory>WebContent</warSourceDirectory>
				</configuration>
			</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的文件里加入如下设置:
				<server>
					<id>tomcat-6.0.32</id>
					<username>tomcat</username>
					<password>tomcat</password>
				</server>

2) 在tomcat/conf的tomcat-users.xml加入如下配置:
	<role rolename="manager-gui"/>

	<role rolename="manager-script"/>

	<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会自动检测和替换相关的依赖。
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://mojo.codehaus.org/tomcat-maven-plugin/index.html
http://tomcat.apache.org/maven-plugin-2/index.html
  • 大小: 85.8 KB
  • 大小: 80.2 KB
  • 大小: 70.5 KB
  • 大小: 68.2 KB
分享到:
评论
6 楼 vivus 2015-07-31  
operating...mydream 写道
如何知道工程文件部署的tomcat映射?? 

啥意思?
5 楼 operating...mydream 2015-07-12  
如何知道工程文件部署的tomcat映射?? 
4 楼 vivus 2014-01-14  
pch272215690 写道
vivus 写道
pch272215690 写道
方法一 能不能做到修改代码后(不是增加类或者方法),立刻就能生效。
类似于在myeclipse中新建一个web工程,改代码后自动发布到tomcat中。

好像不行,但这是自动发布的问题,有个tomcat:redeploy的命令可以用,每次运行一下就行了。另,eclipse有个JRebel的插件可以自动发布的,之前用过一下,但没尝试过跟maven整合,你可以研究一下。


我目前没找到好的办法,所以用嵌入式的jetty来启动,目前也不太完美。还没找到servlet3.0的解决方案,jetty是支持servlet3.0的,但必须打成war包,不方便调试。

每次重启一下就好了,自动发布如果软件处理不好容易出问题,还是重启来得彻底点。如果每次启动都太费时间,是否可以考虑优化一下你的程序?spring的容器初始化得比较慢,虽说spring处理好了不少问题,但最好还是不要过于依赖spring。
3 楼 pch272215690 2014-01-09  
vivus 写道
pch272215690 写道
方法一 能不能做到修改代码后(不是增加类或者方法),立刻就能生效。
类似于在myeclipse中新建一个web工程,改代码后自动发布到tomcat中。

好像不行,但这是自动发布的问题,有个tomcat:redeploy的命令可以用,每次运行一下就行了。另,eclipse有个JRebel的插件可以自动发布的,之前用过一下,但没尝试过跟maven整合,你可以研究一下。


我目前没找到好的办法,所以用嵌入式的jetty来启动,目前也不太完美。还没找到servlet3.0的解决方案,jetty是支持servlet3.0的,但必须打成war包,不方便调试。
2 楼 vivus 2014-01-09  
pch272215690 写道
方法一 能不能做到修改代码后(不是增加类或者方法),立刻就能生效。
类似于在myeclipse中新建一个web工程,改代码后自动发布到tomcat中。

好像不行,但这是自动发布的问题,有个tomcat:redeploy的命令可以用,每次运行一下就行了。另,eclipse有个JRebel的插件可以自动发布的,之前用过一下,但没尝试过跟maven整合,你可以研究一下。
1 楼 pch272215690 2014-01-03  
方法一 能不能做到修改代码后(不是增加类或者方法),立刻就能生效。
类似于在myeclipse中新建一个web工程,改代码后自动发布到tomcat中。

相关推荐

    maven的安装文件以及集成TOMCAT、eclipse的教程

    **四、集成Tomcat** 1. **安装Tomcat**: 下载Tomcat的zip版,解压到指定目录,例如`C:\Tomcat\apache-tomcat-9.x.x`。 2. **配置Tomcat**: 在Eclipse的Servers视图中,右键选择`New -&gt; Server`,选择Apache Tomcat...

    Maven使用tomcat8-maven-plugin插件.docx

    Tomcat 是一个流行的 Web 服务器,Maven 提供了一个插件 tomcat8-maven-plugin 来实现 Maven 项目与 Tomcat 服务器的集成。下面我们将详细介绍如何使用 tomcat8-maven-plugin 插件。 tomcat8-maven-plugin 插件的...

    maven集成tomcat支持热部署

    本篇将详细介绍如何通过Maven集成Tomcat,实现项目的热部署,从而提高开发效率。 首先,集成Maven与Tomcat的核心在于Maven的插件管理。我们需要在项目的`pom.xml`文件中引入`maven-eclipse-plugin`和`maven-war-...

    maven与Tomcat绿色版

    Maven的生命周期包括清理、验证、编译、测试、打包、集成测试、验证、部署和站点等阶段。每个阶段都有一系列的默认目标,比如`compile`用于编译源代码,`test`用于运行单元测试。此外,Maven插件允许扩展这些功能,...

    基于eclipse的maven集成tomcat

    在本文中,我们将深入探讨如何在 Eclipse 环境中集成 Maven 并配置 Tomcat,以便进行便捷的 Web 应用开发和部署。首先,确保你的 Eclipse 版本是 Java EE Version: Juno Service Release 1,同时安装了 Maven 3.0.4 ...

    eclipse+maven+tomcat集成

    例如,选择`maven-archetype-webapp`来创建Web应用程序。 - 配置项目的GroupId、ArtifactId以及Version等基本信息。 - 选择项目的位置和源代码的位置。 - **项目结构**:Maven项目通常包含以下目录结构: - `src...

    maven-tomcat7集成

    总结来说,通过Maven和Tomcat7的集成,开发者可以在Eclipse环境中高效地开发、测试和调试Java Web应用程序。这不仅可以节省时间,还可以提高开发效率,尤其是在大型项目中,使用强大的Tomcat容器可以提供更稳定、更...

    idea+maven+tomcat实现登录案例源代码.zip

    标题中的"idea+maven+tomcat实现登录案例源代码"表明这是一个使用IntelliJ IDEA集成开发环境(IDE),Maven构建工具以及Tomcat服务器来实现的登录功能的示例项目。这个项目的主要目的是通过代码展示如何在Java Web...

    Maven+Eclipse 中使用tomcat

    这个主题涵盖了源码管理和开发工具的使用,包括Maven的项目管理能力以及Eclipse的IDE功能,同时强调了如何利用这两个工具配合Tomcat容器进行Web应用的开发和部署。 【总结】 Maven与Eclipse结合使用,大大简化了...

    jenkins+maven-tomcat插件自动部署

    一旦所有配置都完成,Jenkins将能够自动从Git仓库获取代码,使用Maven进行构建,然后通过Tomcat Maven插件将应用部署到远程Tomcat服务器上。这个自动化流程显著提高了开发效率,减少了手动部署的错误和时间消耗。 ...

    gitlab、jenkins、maven、tomcat

    - **Tomcat**:作为应用服务器承载部署的Web应用。 ##### 2.2 Jenkins全局插件安装 在Jenkins中,首先需要安装必要的全局插件: 1. **JDK**:确保Jenkins环境中已正确安装并配置JDK环境变量。 2. **Maven**:安装...

    创建简单的WEB应用-maven-Tomcat版.doc

    在IT行业中,构建Web应用程序是常见的任务,而Maven和Tomcat是开发Java Web应用时不可或缺的工具。本文将深入探讨如何使用Maven构建一个简单的Web应用,并在Tomcat服务器上部署运行。以下是对给定资源的详细解读。 ...

    maven tomcat 服务器

    Maven和Tomcat的结合使用,极大地简化了Java Web应用的开发和部署流程。Maven通过统一的依赖管理和构建机制,降低了项目管理的复杂性;而Tomcat作为流行的Servlet容器,为Java应用提供了运行环境。两者协同工作,...

    jenkins_maven_tomcat

    《Jenkins、Maven与Tomcat的集成应用详解》 在现代软件开发环境中,持续集成(Continuous Integration,简称CI)和持续部署(Continuous Deployment,简称CD)已经成为不可或缺的一部分。Jenkins作为一款开源的CI/...

    使用Maven开发Java Web应用

    本指南将详细介绍如何在Eclipse环境中使用Maven进行Java Web应用的开发。 一、Maven的优势与基本概念 Maven通过项目对象模型(Project Object Model,POM)来管理项目配置,包括依赖、构建过程、插件等。它自动处理...

    maven tomcat idea 配置

    Maven是Java项目管理和构建的利器,Tomcat是一个流行的Java Servlet容器,用于运行Web应用程序,而IntelliJ IDEA则是广泛使用的Java集成开发环境(IDE)。本文将详细介绍如何在IntelliJ IDEA中配置Maven和Tomcat,...

    maven+tomcat.rar

    在Eclipse内,可以直接运行和调试Maven构建的Web应用,方便进行开发和测试。 【文件结构】虽然未提供具体的压缩包文件列表,但通常情况下,这样的压缩包可能包含以下内容: 1. Apache Tomcat的解压目录,包括bin、...

    maven-tomcat自动部署

    Maven是一个基于Java的项目管理工具,它可以帮助开发者管理和构建Java项目,而Tomcat则是一个开源的Servlet容器,广泛用于部署Java Web应用程序。当我们谈论"Maven-Tomcat自动部署"时,我们指的是使用Maven来自动化...

    maven、tomcat下载资源

    在开发Java Web应用时,Maven可以与Tomcat进行集成,简化部署流程。例如,使用Maven的Tomcat插件(如`maven-tomcat-plugin`或`tomcat7-maven-plugin`),可以直接通过命令行将应用部署到本地运行的Tomcat服务器上,...

Global site tag (gtag.js) - Google Analytics