我们做JavaEE开发的时候会用到Java应用服务器,比如说Tomcat,JBoss等,我们每当改动xml配置文件或者后台的Java源代码的时候,必须重启服务器才能看到效果。
有时候做一个项目会重启服务器成百上千次,让人烦不胜烦,不仅如此,有的项目还需要打包,考到服务器的指定目录下才能发布,这一系列的过程是非常让人受不了的
我们希望什么呢,我们所希望的理想状态是,我在后台改动配置文件,改动任何Java类文件时,无需重新打包,无需重启服务器,就能在浏览器上看到效果,这多高效啊,多方便啊。
今天,我来介绍一下如何达到这种目的,其实经过一番研究,能完美地实现以上愿望
Jrebel是著名的Java程序热部署插件,首先你需要下载Jrebel这个软件,然后解压到任何一个目录里,后边全靠Jrebel来实现无需重启服务器。
很多人在用Myeclipse开发的JavaEE程序,Myeclipse里有个插件,能即时将你做的任何修改及时同步到Tomcat webapps里面,Myeclipse用的是开发模式,就是不打包,这样每次保存文件后,只需要重启服务器即可,但即使这样也是我受不了的
遇到这种情况时我们打开,写入下图的那两句话,后边一句话指向你Jrebel的目录即可,这样当你在myeclipse中启动tomcat的时候,以后改动Java源文件,服务器无需重启直接就能看到修改后的效果
还有一种情况,我们在公司里做项目会用到Maven,会分很多模块,而Maven每次都要打包,然后包jar或者war文件copy到JBoss的deploy目录下,再重启Jboss方可看到效果,这个过程重复无聊
解决方法是,在Myeclipse中建立多模块Maven项目,将你Maven中的多模块中的web模块转换成Myeclipse的Web工程,其实这并不会改变原工程的样式,然后调整一下BuildPath下的一些设置
确定src下边的类文件输出到xxx/src/main/webapp/WEB-INF/classes这个文件夹即可。然后直接用Myeclipse的服务器插件来部署你的Maven项目即可
当然你最后发布的时候可以用Maven来打包一下,也可以不用,因为Myeclipse也能打包的