eclipse修改java热部署免重启tomcat在Host标签下增加Context直接将docBase指定为项目的WebContent路径
为了避免每次修改java文件eclipse都自动重启耗时较长,研究了网上方法,在eclipse+tomcat7本机实践了下可行。
原理:将eclipse工程的WebContent直接作为部署目录,你的修改相当于直接在部署目录里修改,所以不需要发布publish了就可以关闭tomcat自动部署和重启。把class的输入目录放在默认的WebContent/WEB-INF/classes下,修改java的时候eclipse自动将修改后的class进行替换。
效果:非关键类可以即时生效,如果是一些与session有关的类可能会导致错误,以及只加载一次的文件xml可能不会生效,这时手工重启tomcat即可。总的来说在大部分时候还是很方便的,减少了tomcat重启次数,节省了时间,提高了效率。
具体操作:
eclipse下修改tomcat的server.xml,在Host标签下修改Context标签的docBase,直接将docBase指定为项目的WebContent路径,有的项目是WebRoot文件夹,根据自己的项目来。
我的配置:
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false"><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log." suffix=".txt"/><Context docBase="E:/zxw/workspace/20130311workspace/workspace/project/WebContent" path="/project" reloadable="false"><Loader className="org.apache.catalina.loader.VirtualWebappLoader" searchVirtualFirst="false" virtualClasspath="E:/zxw/workspace/20130311workspace/workspace/project/WebContent/WEB-INF/lib/*.jar"></Loader> </Context>
</Host>
docBase就是发布目录
path是你项目名称
reloadable="false" 网上说这个是关闭tomcat自动部署的(tomcat自动部署自后就会自动重启),我们把项目的目录作为部署目录就不需要进行部署了,所以设置为false。
virtualClasspath 这个是加载jar包的路径配置你的lib目录下的jar包:WebContent/WEB-INF/lib/*.jar 。这个据说tomcat6不支持,tomcat7支持。
注意:项目编译的classd的输出目录要在WebContent/WEB-INF/classes ,否则的话找不到class的,web工程的结构就是这样。不在这个目录的要修改下项目的默认输出目录:
项目右键 -》properties -》Java Build Path -》source -》Default output folder
参考资料:
http://simon-fish.iteye.com/blog/2102421
http://blog.csdn.net/feilongjian001/article/details/8576392
eclipse修改java热部署免重启tomcat在Host标签下增加Context直接将docBase指定为项目的WebContent路径相关推荐
- IntelliJ IDEA16 热部署,解决每次修改java文件就得重启tomcat的问题
这样就可以了.... 转载于:https://www.cnblogs.com/wl0000-03/p/6274259.html
- 修改JAVA代码,需要重启Tomcat的原因
准确的说只有修改方法中的内容才不需要重启,因为tomcat中对于方法的调用是动态的,调用方法的时候,方法的内容才会被加载 新增成员变量,方法,或修改静态方法和静态变量.创建新的类 这些都是需要重启的, ...
- eclipse修改java类时不自动重启
只有添加修改方法参数等重启 在方法里修改不重启 最后保存,Ctrl+S 转载于:https://www.cnblogs.com/xiaostudy/p/11022297.html
- java 不重启部署_编译Java类后不重启Tomcat有两种方式:热部署、热加载
不重启Tomcat有两种方式:热部署.热加载 热部署:容器状况在运行时重新部署整个项目.这类环境下一般整个内存会清空,重新加载,这类方式 有可能会造成sessin丢失等环境.tomcat 6确实可以热 ...
- Web开发如何实现Tomcat等服务器热部署不用重启
Web开发如何实现Tomcat等服务器热部署不用重启 听语音 | 浏览:354 | 更新:2016-05-28 11:18 在进行java web开发的时候,对类改动一些代码后,通常就需要对服务器比如 ...
- eclipse里面配置热部署,tomcat配置
tomcat热部署问题: 在开始上班之前,项目还很小.每个项目启动只要几秒钟,当时不觉得麻烦. 可是---------------------------------------------- 上班之 ...
- eclipse 修改java代码不重启服务器 生效配置
1.本文目的:用tomcat进行web开发时,修改Java代码往往要重启代码,当工程较大启动较慢时,严重影响效率,本文通过eclipse下tomcat开发和发布web程序时,对一些Java代码一 ...
- Maven(三):将web项目的war包热部署到远程Tomcat服务器
相关阅读: Maven(一):安装与环境配置.使用Maven搭建web项目 Maven(二):常用命令.依赖管理 Maven(三):将web项目的war包热部署到远程Tomcat服务器 Maven(四 ...
- java 热部署实现_Java热部署的实现原理
Java热部署的实现原理 Contributor:properties Type:简体中文 Date time:2017-01-22 00:10:19 Favorite:1 Score:0 返回上页 ...
最新文章
- ADO.NET 快速入门(一):ADO.NET 概述
- Eclipse 报 “Exception in thread main java.lang.OutOfMemoryError: Java heap space ”错误的解决办法...
- Upload-labs闯关
- vite2.1 最新alias别名设置方式
- 吴恩达深度学习5.1笔记_Sequence Models_循环序列模型
- 0基础web开发 python_真零基础Python开发web
- python人脸对比相似度_Python比较两个图片相似度的方法
- 国标GB28181协议视频平台EasyGBS国标级联到上级宇视平台,不断切换在线和离线状态是什么原因?
- 电路设计_STM8S003F3P6 AWUADC使用小结
- 面试 innodb底层原理
- 固态硬盘跟机械硬盘的区别
- 赵小楼《天道》《遥远的救世主》深度解析(115)婚姻的观点
- AspNetPager属性
- LLVM-clang
- 2021-11-13周报
- linux系统下安装教程_手机安装linux系统安装教程
- 用Excel建立数据库
- 使用openssl生成CA、server、client私钥和证书(证书包括公钥)
- Hexo-matery主题美化
- 笔记本摄像头怎么打开?几个步骤轻松打开
热门文章
- 推荐系统之美团在CTR模型优化的实践
- 【报告分享】2020年中国人工智能商业落地研究报告.pdf(附下载链接)
- 2020年5月十大热门报告盘点(附下载链接)
- 【报告分享】百度大脑AI技术成果白皮书2018-2019.pdf
- 浅谈 多任务学习 在推荐系统中的应用
- 阿里、腾讯 | 算法岗面试复盘
- 图嵌入表示TADW:当DeepWalk加上外部文本信息
- 【论文复现】使用CNN进行文本分类
- server之后安装ssms失败 安装sql_SQL Server 2019怎么安装?SQL Server 2019详细安装使用教程及SSMS连接...
- js 拉勾网效果_python爬取拉勾网职位数据