文档章节

Tomcat热部署的三种方式

xiaml
 xiaml
发布于 2016/12/07 17:55
字数 567
阅读 243
收藏 4
点赞 0
评论 0

热部署是指在你修改项目BUG的时候对JSP或JAVA类进行了修改在不重启WEB服务器前提下能让修改生效。但是对配置文件的修改除外! 

1、直接把项目web文件夹放在webapps里。


2、在tomcat\conf\server.xml中的<host></host>内部添加<context/>标签: 
<Context debug="0" docBase="D:\demo1\web" path="/demo1" privileged="true" reloadable="true"/>

 

docBase:项目路径,可以使用绝对路径或相对路径,相对路径是相对于webapps 
path:访问项目的路径,如:http://127.0.0.1:8080/demo1 
reloadable:是否自动加载新增或改变的class文件. 
debug属性与这个Engine关联的Logger记录的调试信息的详细程度。数字越大,输出越详细。如果没有指定,缺省为0。 也就是程序异常时写入日志文件里的详细程度。


3、第三种方式和第二种差不多,但是不是在Server.xml文件中添加Context标签,而是在 
%tomcat_home%\conf\Catalina\localhost中添加一个XML文件,

如:demo1.xml,内容如下: 
<?xml version="1.0" encoding="UTF-8"?> 
<Context docBase="D:\demo1\web" reloadable="true" /> 
,只是缺少了path属性,如果你硬写个path="demo2"的话,是没有用的,tomcat不明确的告诉你:“我不认得”, 
这种方式服务器会使用xml文件的名字作为path属性的名字,SO访问地址为:http://localhost:8080/demo1 
 

=========================================================================================


还有一种方式:使用第三方工具

http://www.zeroturnaround.com/jrebel/

1、解压缩包

2、执行Java -jar jrebel-setup.jar

3、会弹出一个安装界面(自己看,很好懂)

4、在MyEclipse中配置,找到服务器(如tomcat)的配置页面,在tomcat的jdk配置页面的Optional Java VM arguments输入框中加如下参数:

-noverify -javaagent:D:\dev\JRebel\jrebel.jar -Drebel.dirs=D:\dev\apache-tomcat-6.0.20\webapps\nmr

第一个路径是jar包的绝对路径,第二个地址是说想让哪个目录下的类更改后不重启服务。

如果Optional Java VM arguments输入框中有其他参数,用空格隔开。

5、发布项目,就能在控制台看到效果。

类就可以改变之后不用重启tomcat。

目前流行的服务器都支持。详细看官方网站。

下载的压缩包文件名为jrebel-setup.zip (7.8 MB) 

© 著作权归作者所有

共有 人打赏支持
xiaml
粉丝 2
博文 22
码字总数 15165
作品 0
西城
程序员
基于nginx实现web服务器的双机热备

1.适用场景 对于部署重要的服务,会使用两台服务器,互相备份,共同执行同一服务。当一台服务器出现故障时,可以由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能...

_Reality
2017/12/10
0
0
121 项目 012 笔记向 tomcat 部署项目

最简单的部署 直接把 war 文件复制到 webapps 目录下 配置server.xml 这种修改原有配置的方案我一般是不会用的 具体操作: 其中,docBase为设置项目的路径。 新建 context .在conf目录中,在...

小代码2016
2016/09/29
34
0
【Play】热部署是如何工作的?

1.什么是热部署 所谓热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。对于Java应用程序来说,热部署就是在运行时更新Java类文件。– 百度百科 对于Java应用,有三种常见的...

English0523
01/12
0
0
使用Maven如何debug和热部署

最近尝试将项目用Maven管理,Maven管理能力确实不错,但在开发时,却遇到了一些问题,望大家指点: 1、debug问题: 我是使用Maven的tomcat插件:tomcat-maven-plugin在eclipse里直接集成tom...

nick_chen
2013/01/21
31.8K
10
Tomcat 热部署实现方式源码分析总结

研究了一下tomcat的类的热部署的源码实现,总结沉淀一下。Tomat实现热部署主要有两种机制: (1) 一种是类似于Servlet这种类的热部署即在WEB-INF/class目录下的类:实现方式可以概括为在容器启...

heroShane
2014/02/11
0
0
WebLogic11g-部署web应用(以Springside3为例)

Weblogic11g部署web应用,有三种方式,非常简单,但是很多新手部署总是出现若干错误,不知道如何解决。下面以白衣大神的springside3应用举例(原因是springside3很有代表性)详细讲解: 1、准...

Dead_knight
2013/09/09
0
0
使用Java+Tomcat搭建远端服务器

前言 上一篇介绍了京东云主机的登录和简单的静态网页配置。 这一篇主要讲述服务器开发环境的配置和部署。 首先,实现服务器开发的语言特别多:Java、PHP、Node.JS、Python等。 这里我选择的是...

黑色小老虎丶
2017/08/28
0
0
maven实现项目远程部署到tomcat7

1.配置远程的tomcat7,修改conf下的tomcat-users.xml文件,如下: <role rolename="manager-gui"/><role rolename="manager-script"/><user username="tomcat" password="tomcat" roles="ma......

夕水溪下
2012/07/10
0
1
maven多模块部署问题

开发工具: myeclipse 现有一个项目:oto商城类,采用maven搭建架构,多个模块管理; 内有:商品管理,店铺管理,订单管理,资讯管理等,仅一个web模块,多个jar模块,个个模块个别存在相互依赖; 因为多个...

尾生
2016/01/15
379
1
持续集成和docker

现在的持续集成,因为docker技术的成熟,有了长足的进步。 记得我在以前的公司的时候,测试环境还有生产环境的发布都需要组长来发布。有时候,他忙的话,发布就会延后,特别是测试环节,直接...

miaojiangmin
2016/11/07
24
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Xshell登录阿里云服务器ECS

Xshell登录阿里云服务器ECS 1. 参考资料: 1). 《阿里云服务器怎么用?阿里云服务器使用教程》 链接:http://www.cr173.com/html/50758_1.html 2). eagle-zhang的CSDN博客《Xshell连接不上阿...

SuShine
7分钟前
0
0
IDEA中的HTTP Client Editor测试API

在前后端分离项目,前后端通过api进行通信。如果用postman免费版进行api测试的话,由于无法保存测试脚本到文件,不方便前端查看。 你可以选择付费版。也可以利用IDEA自带的HTTP Client Edito...

hutaishi
10分钟前
0
0
解决“只能通过Chrome网上应用商店安装该程序”的方法

摘要 : 最近有些用户反映某个Chrome插件在安装的时候,提示“只能通过Chrome网上应用商店安装该程序”,为了解决这一问题,Chrome插件网带来了相关的解决方法。 某些用户在Chrome插件网下载了...

沧海一刀
11分钟前
0
0
通过UNIX域套接字传递文件描述符

  传送文件描述符是高并发网络服务编程的一种常见实现方式。Nebula 高性能通用网络框架即采用了UNIX域套接字传递文件描述符设计和实现。本文详细说明一下传送文件描述符的应用。 1. TCP服务...

Bwar
14分钟前
0
0
python操作Excle

# -*- coding: utf-8 -*-from openpyxl import load_workbook, Workbook#index:第几个sheet页,第一个sheet页的index为0def readExcle(filename,index): # 加载excle文件 wb = l......

淺陌离殇
16分钟前
0
0
Apache爆日志文件漏洞

全球使用最广泛的Web服务器Apache近日被爆出了一个安全漏洞,该漏洞可能导致攻击者控制服务器。 该漏洞包含在mod_rewrite 模块中的do_rewritelog()日志函数中。由于该函数还无法完全过滤写入...

问题终结者
50分钟前
0
0
阿里巴巴内部开发手册

现代软件架构的复杂性需要协同开发完成,如何高效地协同呢?无规矩不成方圆,无规范难以协同,比如,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全,试想如果没有限速,没有...

zbbmaster
55分钟前
0
0
34.任务计划cron chkconfig systemctl管理服务 unit target

10.23 linux任务计划cron 10.24 chkconfig工具 10.25 systemd管理服务 10.26 unit介绍 10.27 target介绍 10.23 linux任务计划cron: 在linux中任务计划是必不可少的,因为可能我们凌晨的时候...

王鑫linux
55分钟前
0
0
logback.xml for spring boot

logback.xml config <?xml version="1.0" encoding="UTF-8"?><configuration> <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.Colo......

qwfys
56分钟前
0
0
告警系统邮件引擎 运行告警系统

告警系统邮件引擎 因为之前做zabbix的时候,做过mail.py的脚本,在这里,直接调用进行使用就可以。 但是告警邮件引擎核心,conf主配置文件调用到的都是mail.sh ,所以这里需要定义调用mail....

lyy549745
56分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部