为了避免每次修改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/girl_pro/article/details/50965845 

http://blog.csdn.net/feilongjian001/article/details/8576392

eclipse修改java热部署免重启tomcat在Host标签下增加Context直接将docBase指定为项目的WebContent路径相关推荐

  1. IntelliJ IDEA16 热部署,解决每次修改java文件就得重启tomcat的问题

    这样就可以了.... 转载于:https://www.cnblogs.com/wl0000-03/p/6274259.html

  2. 修改JAVA代码,需要重启Tomcat的原因

    准确的说只有修改方法中的内容才不需要重启,因为tomcat中对于方法的调用是动态的,调用方法的时候,方法的内容才会被加载 新增成员变量,方法,或修改静态方法和静态变量.创建新的类 这些都是需要重启的, ...

  3. eclipse修改java类时不自动重启

    只有添加修改方法参数等重启 在方法里修改不重启 最后保存,Ctrl+S 转载于:https://www.cnblogs.com/xiaostudy/p/11022297.html

  4. java 不重启部署_编译Java类后不重启Tomcat有两种方式:热部署、热加载

    不重启Tomcat有两种方式:热部署.热加载 热部署:容器状况在运行时重新部署整个项目.这类环境下一般整个内存会清空,重新加载,这类方式 有可能会造成sessin丢失等环境.tomcat 6确实可以热 ...

  5. Web开发如何实现Tomcat等服务器热部署不用重启

    Web开发如何实现Tomcat等服务器热部署不用重启 听语音 | 浏览:354 | 更新:2016-05-28 11:18 在进行java web开发的时候,对类改动一些代码后,通常就需要对服务器比如 ...

  6. eclipse里面配置热部署,tomcat配置

    tomcat热部署问题: 在开始上班之前,项目还很小.每个项目启动只要几秒钟,当时不觉得麻烦. 可是---------------------------------------------- 上班之 ...

  7. eclipse 修改java代码不重启服务器 生效配置

       1.本文目的:用tomcat进行web开发时,修改Java代码往往要重启代码,当工程较大启动较慢时,严重影响效率,本文通过eclipse下tomcat开发和发布web程序时,对一些Java代码一 ...

  8. Maven(三):将web项目的war包热部署到远程Tomcat服务器

    相关阅读: Maven(一):安装与环境配置.使用Maven搭建web项目 Maven(二):常用命令.依赖管理 Maven(三):将web项目的war包热部署到远程Tomcat服务器 Maven(四 ...

  9. java 热部署实现_Java热部署的实现原理

    Java热部署的实现原理 Contributor:properties Type:简体中文 Date time:2017-01-22 00:10:19 Favorite:1 Score:0 返回上页 ...

最新文章

  1. ADO.NET 快速入门(一):ADO.NET 概述
  2. Eclipse 报 “Exception in thread main java.lang.OutOfMemoryError: Java heap space ”错误的解决办法...
  3. Upload-labs闯关
  4. vite2.1 最新alias别名设置方式
  5. 吴恩达深度学习5.1笔记_Sequence Models_循环序列模型
  6. 0基础web开发 python_真零基础Python开发web
  7. python人脸对比相似度_Python比较两个图片相似度的方法
  8. 国标GB28181协议视频平台EasyGBS国标级联到上级宇视平台,不断切换在线和离线状态是什么原因?
  9. 电路设计_STM8S003F3P6 AWUADC使用小结
  10. 面试 innodb底层原理
  11. 固态硬盘跟机械硬盘的区别
  12. 赵小楼《天道》《遥远的救世主》深度解析(115)婚姻的观点
  13. AspNetPager属性
  14. LLVM-clang
  15. 2021-11-13周报
  16. linux系统下安装教程_手机安装linux系统安装教程
  17. 用Excel建立数据库
  18. 使用openssl生成CA、server、client私钥和证书(证书包括公钥)
  19. Hexo-matery主题美化
  20. 笔记本摄像头怎么打开?几个步骤轻松打开

热门文章

  1. 推荐系统之美团在CTR模型优化的实践
  2. 【报告分享】2020年中国人工智能商业落地研究报告.pdf(附下载链接)
  3. 2020年5月十大热门报告盘点(附下载链接)
  4. 【报告分享】百度大脑AI技术成果白皮书2018-2019.pdf
  5. 浅谈 多任务学习 在推荐系统中的应用
  6. 阿里、腾讯 | 算法岗面试复盘
  7. 图嵌入表示TADW:当DeepWalk加上外部文本信息
  8. 【论文复现】使用CNN进行文本分类
  9. server之后安装ssms失败 安装sql_SQL Server 2019怎么安装?SQL Server 2019详细安装使用教程及SSMS连接...
  10. js 拉勾网效果_python爬取拉勾网职位数据