怎样给tomcat+Myeclipse增加热部署(热加载)功能?

yqsshr 2010-01-24 04:25:29
现在这个项目非常大,每次重启都得五分钟,而在Myeclipse中每次修改一个java类文件后都得重新启动服务,这样的效率真是可想而知。我想问一下,有没有什么办法使得在MyEclipse中修改java文件像修改jsp文件那样马上能够反应到程序当中的呢?谢谢!
我在网上找过一个什么javarebel,不过不管用,不知道是自己配置没配好还是怎么着的。据说GlassFish对热部署支持挺好,不过现在项目用的是Tomcat啊,各位兄弟有什么好的方法不?
...全文
4538 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
yqsshr 2010-01-27
  • 打赏
  • 举报
回复
谢谢诸位,什么时候自己写个classloader也行啊。。
老张-AI 2010-01-25
  • 打赏
  • 举报
回复
struts2的话倒可以
struts.devMode = true (Tomcat的路径不能有空格)
kksss 2010-01-25
  • 打赏
  • 举报
回复
之前在javaeye看到高手提到过JavaRebel LZ有空去看看好象能实现你的需求。。

每次启动5分钟我已经习惯了。。。
dinghun8leech 2010-01-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 warison2008 的回复:]
tomcat对java类的修改本来就不需要重启project,除非修改的类是:serverlet,公共接口等
[/Quote]
有个疑问,我也碰到类似问题,有某些类通过修改后(有组件类,也有servlet的子类),我会把他编译成.class后在tomcat运行状态下就复制到对应位置,替换原.class文件,但实际效果不会立即显现,我也没测试过一段时间后是否能自动更新。
  • 打赏
  • 举报
回复
[Quote=引用楼主 yqsshr 的回复:]
现在这个项目非常大,每次重启都得五分钟,而在Myeclipse中每次修改一个java类文件后都得重新启动服务,这样的效率真是可想而知。我想问一下,有没有什么办法使得在MyEclipse中修改java文件像修改jsp文件那样马上能够反应到程序当中的呢?谢谢!
我在网上找过一个什么javarebel,不过不管用,不知道是自己配置没配好还是怎么着的。据说GlassFish对热部署支持挺好,不过现在项目用的是Tomcat啊,各位兄弟有什么好的方法不?
[/Quote]

建议使用Jboss,玩EJB的时候,热部署挺爽 。。。。。 比tomcat高效多了
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 czmchen 的回复:]
按正常TOMCAT修改JSP不用重启的,修改类都要重启!

找到Tomcat 下的context.xml
<Context path="/xxx" docBase="d:\java\Workspaces\WebRoot" reloadable="true"> 
</Context>
path是项目上下文路径
docBase是项目的部署DOC
reloadable一定设置为true,这个是自动加载
[/Quote]
这样还是不行,还是得等他自动加载完了,才能正常访问项目
czmchen 2010-01-25
  • 打赏
  • 举报
回复
按正常TOMCAT修改JSP不用重启的,修改类都要重启!

找到Tomcat 下的context.xml
<Context path="/xxx" docBase="d:\java\Workspaces\WebRoot" reloadable="true">
</Context>
path是项目上下文路径
docBase是项目的部署DOC
reloadable一定设置为true,这个是自动加载
crazylaa 2010-01-24
  • 打赏
  • 举报
回复
开发的时候重启正常。
JavaAlpha 2010-01-24
  • 打赏
  • 举报
回复
一般的修改配置文件才需要重启的。 其他的就需要重启tomcat的。
yqsshr 2010-01-24
  • 打赏
  • 举报
回复
噢,,我修改的是servlet啊
yqsshr 2010-01-24
  • 打赏
  • 举报
回复
我项目是部署在Root目录下的,而且启动的时候需要加载很多东西,如果只在Tomcat上redeploy服务还是会重启,而且速度更慢,所以还不如直接重启服务呢。。呵呵,我也知道热部署和热加载不一样,但还是有点混淆··感觉无关重要
烟雨鹏城 2010-01-24
  • 打赏
  • 举报
回复
tomcat对java类的修改本来就不需要重启project,除非修改的类是:serverlet,公共接口等
archko 2010-01-24
  • 打赏
  • 举报
回复
热部署和热加载不一样的。GF也是要重载整个。之前也听说可以加载某个类而不是全部,没看见有人实现并贴出来分享。
修改不用重启吧,只是又加载一次而以。而且JSP修改也不是马上就有反应的,Eclipse好像是5秒后,

67,549

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧