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 ...
随机推荐
- fedora16下更改网卡名字
fedora16下更改网卡名字 今天由于网络启动出错的原因,在网上搜索,发现大部分人的网卡名字都是eth0,可是我的却是p3p1,所以想改成eth0. 然后google了下,发现设备命名什么的 ...
- udev和rules使用规则
本文以通俗的方法阐述 udev 及相关术语的概念.udev 的配置文件和规则文件,然后以 Red Hat Enterprise Server 为平台演示一些管理设备文件和查询设备信息的实例.本文会使那 ...
- leetcode 之Permutation(七)
首先是next permutation的算法的描述和分析如下: 这题一是要知道思路,编程中注意STL的用法 void nextPermutaion(vector<int> &num ...
- python抓取链家房源信息(二)
试着用scrapy将之前写的抓取链家网信息的重新写了写 然后先是用了第一页的网页作为测试,调试代码,然后发现总是抓取的时候遇见了 类似于这样的问题,并且抓取不到信息 2017-03-28 17:52: ...
- Linux 基础——权限管理命令chown、chgrp
一.chown命令与chgrp命令的作用 有时你需要改变文件或目录的属主,比如有人离职或开发人员创建了一个在测试或生产环境中需要归属在系统账户下的应用.Linux提供了两个命令来实现这个功能:chow ...
- php简明学习教程
1.变量 <?php //变量声明(php变量无需单独创建,变量会在第一次赋值时创建) $a = 1; //弱类型(php变量会根据其值自动转换为相应的数据类型) $a = "a&qu ...
- Error: Exception was raised when calling event-notify Vuser function in extension parameng.dll: System Exceptions: EXCEPTION_ACCESS_VIOLATION
解决方法:在C 盘新建一个TEMP目录,把环境变量TMP,TEMP的值设置成环境变量,重启计算机
- ftp缓存信息
using System.Collections.Generic; using NewTempo.Ftp; using System.IO; using NshowAdClient.NshowAdSe ...
- Laravel 之父:让 Laravel、Symfony、 Zend 来一场公平的性能测试
网上充斥着各式各样的 PHP 框架性能对比的文章.然而,他们总是把“苹果”和“橘子”做对比(看上去有点儿像,都是圆的,但其实不是一码事).这次,我将着重对 Laravel.Symfony 和 Zend ...
- vue 阻止事件冒泡
<mt-button type="danger" size="small" @click="cancelOrderInfo(this.even ...