Maven +Tomcat+m2eclipse的热部署(hot deploy)
原文地址: http://www.cnblogs.com/cbf4life/archive/2010/01/29/1659502.html
软件版本:maven 2.2 tomcat 6.0,Eclipse 3.4
首先是建立环境,tomcat、maven、m2eclipse都不说了,这不配好,剩下的你也别看了。都准备好了,那我们就一步一步的开始了。
- 管理自己的tomcat.
到tomcat的安装目录中,F:\J2EE\apache-tomcat-6.0.24\conf在其中增加一个用户定义,默认是没有用户的,结果如下:
<tomcat-users> <user username="admin" password="password" roles="manager"/> </tomcat-users>
增加了一个admin用户,密码是password,角色是管理员。
2、 启动tomcat,然后访问 http://localhost:8080/manager/html,输入admin/password,如果出现以下界面,表示tomcat一切OK:
![]()
3、 在maven的setting.xml中定义本机的tomcat,增加如下内容:
<servers> <!-- 增加一个测试服务器 --> <server> <id>tomcat</id> <username>admin</username> <password>password</password> </server> </servers>
记住这里的id,等会要用到。
4、 在Eclipse中建立一个打包类型为war的maven项目:
![]()
如果这步都不会,那就先修行maven再说。
5、 修改pom.xml文件,格式如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.world</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <version>1.0-beta-1</version> <configuration> <url>http://localhost:8080/manager/html</url> <server>tomcat</server> </configuration> </plugin> </plugins> </build> </project>
看清楚configuration配置,别的没啥,<url>标签指明tomcat的管理器地址,<server>标签指明使用的是那个服务器。
6、 在项目中增加web.xml和一个测试文件HotDeplyTest.jsp。
HotDeplyTest.jsp内容如下:
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>Insert title here</title> </head> <body> <font size=6 color=red><BR></BR> If you see this, It turns out your Hot Deploy ENV is OK!</font> </body> </html>
Web.xml啥内容都没有,随便从别的项目中拷贝一个过来就成。
7、 Demo项目,鼠标右键,Run As 选择 Maven build,出现如下界面:
![]()
在Goals中添加点东西:package tomcat:redeploy
![]()
这句话是什么意思呢?运行build的目的就是打包,同时部署到tomcat上。
8、 点击Run按钮,注意看Console,看看有没有错误,没有错误的话,访问: http://localhost:8080/demo/HotDeployTest.jsp,如果出现如下界面,则表示一切万事大吉:
![]()
然后你就可以开始继续蹂躏了,加入自己的精华吧!
Maven +Tomcat+m2eclipse的热部署(hot deploy)的更多相关文章
- maven tomcat 插件实现热部署
tomcat 的maven插件有助于提高开发效率,原因是: --可以直接把项目发布到远程的服务器上. --能够实现项目的热部署,在开发过程中修改了Java类,不需要重启tomcat 首先配置一个tom ...
- IDEA使用Maven+Tomcat插件实现热部署
1 配置tomcat pom.xml <!-- tomcat7启动插件 --> <plugin> <groupId>org.apache.tomcat.maven& ...
- 基于tomcat插件的maven多模块工程热部署(附插件源码)
内容属原创,转载请注明出处 写在前面的话 最近一直比较纠结,归根结底在于工程的模块化拆分.以前也干过这事,但是一直对以前的结果不满意,这会重操旧业,希望搞出个自己满意的结果. 之前有什么不满意的呢? ...
- Jenkins +svn +maven +tomcat+ ansible 自动化批量部署
Jenkins +svn +maven +tomcat+ ansible 自动化批量部署 一.部署svn yum install subversion 先创建目录 mkdir /home/svn 创建 ...
- Maven添加Tomcat插件实现热部署
Maven热部署,顾名思义就是可以不影响项目在服务器中的运行情况,可以实现项目代码的更新,减少启动,编译时间,达到快速开发的目的,也不需要手动拷贝war包到远程项目,可以直接将项目以及war包部署到远 ...
- Tomcat 7.x热部署
由于在开发阶段,需要频繁的修改源代码,如果每次修改完代码都去重启服务器来检测效果,那简直麻烦到你想死,又耽误时间,所以,在网上找了许久,终于找到了解决办法, 特来分享 我也试了修改Server.xml ...
- IntelliJ13+tomcat+jrebel实现热部署(亲测可用)
网上有很多介绍intellij idea整合jrebel插件实现热部署的文章,但是有的比较复杂,有的不能成功,最后经过各种尝试,实现了整合,亲测可用!步骤说明如下: 一.先下载jrebel安 ...
- 关于Tomcat 6的热部署和热加载
转载:http://blog.csdn.net/tianlincao/article/details/7263840 之前每当修改了类文件,保存后tomcat 都需要自动重启,今天作了后面的设置后,可 ...
- Maven Jrebel 多模块热部署方案
近期在构建maven多模块项目时,发现web module依赖的其它模块,每次都要clean install成一个jar包,然后运行web module才能加载. 本生jrebel是配置在了web m ...
随机推荐
- 构建基于TCP的应用层通信模型
各层的关系如下图,表述的是两个应用或CS间通信的过程: 通常使用TCP构建应用时,需要考虑传输层的通信协议,以便应用层能够正确识别消息请求.比如,一个请求的内容很长(如传文件),那肯定要分多次发送 ...
- “您查看的网页正在试图关闭窗口。是否关闭此窗口”的屏蔽方法(JavaScript)
原文:http://www.cnblogs.com/tigerhuolh/archive/2011/04/14/2015634.html 用JS代码关闭窗口时会提示“您查看的网页正在试图关闭窗口.是否 ...
- mysql触发器(Trigger)简明总结和使用实例
一,什么触发器 1,个人理解触发器,从字面来理解,一触即发的一个器,简称触发器(哈哈,个人理解),举个例子吧,好比天黑了,你开灯了,你看到东西了.你放炮仗,点燃了,一会就炸了.2,官方定义触发器(tr ...
- tomcat报错HTTP Status 405 - HTTP method GET is not supported by this URL
servlet提交表单,结果出错. 出现HTTP Status 405 - HTTP method GET is not supported by this URL 原因是:1.继承自Httpserv ...
- interesting Integers(数学暴力||数论扩展欧几里得)
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAwwAAAHwCAIAAACE0n9nAAAgAElEQVR4nOydfUBT1f/Hbw9202m0r8
- Linux 基础——关机重启命令shutdown、reboot等
一.关机重启命令的作用 相信对于接触过电脑的人来说,特别是对于windows系统来说,如果长时间使用不经重启的话会出现一点点卡顿的感觉.但是当重启整个系统后,这点点卡顿的感觉好像又没了,重启后wind ...
- print、println的区别
System.out.print("a");——后面没有换行符 System.out.println("b");——后面有换行符 换行符:\r和\n以及\r\n ...
- char *总结
#include <iostream> using namespace std; int main() { char *p[] = {"one","two&q ...
- “裕同集团&易普优APS项目启动大会”顺利召开
“裕同集团&易普优APS项目启动大会”顺利召开 ——易普优APS助力裕同集团实现精益生产 2017年7月05日,“裕同集团&易普优APS项目启动大会”顺利召开,裕同集团高级王副总裁.I ...
- Redis实战(一)
一.准备 Redis 是一个开源的使用ANSI C 语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value 数据库.Redis的出现,很大程度补偿了memcached这类key/valu ...