引言:部署在项目开发过程中是常有的事,特别是debug的时候,但是如果每次修改一个bug都要把整个项目重新部署一遍,以便测试修改的效果或者继续debug其他bug,那对开发人员来说无疑是一大噩梦。不过有了JVM的hotSwap以及Intellij Idea对debug,hotSwap的支持,热部署就变得很容易的一件事情。今天就简单介绍一下通过对Intellij Idea 2017热部署的设置达到最方便的最高效的debug效果。
1.设置Debugger-HotSwap
在setting界面,打开Debugger-HotSwap选项,确保勾选了Build project before reloading classes,同时选择Reload classes after compilation为Always。这样我们在编译某个修改了的java文件之后,就会利用HotSwap机制reload class,而Build project before reloading classes就确保了其他修改过的文件一起同步到部署目录。
设置Debugger-HotSwap.png2.项目设置
在Project Structure视图中,在Project setting --> Articfacts选项中,选择war:Exploded类型的modules,然后设置编译输出项目的路径
项目设置.png将你的构建输出目录直接设置在源程序目录中,然后重定向的docBase直接指向你的web根目录(就是WEB-INF的父目录)。这样,你只要将编译输出目录设置为WEB-INF\classes就行了,而且,修改JSP文件都不要重新构建,唯一要做的就是修改了java文件之后compile一下。
注:关于如何设置web工程的方法请参照文章《idea设置tomcat》
3.配置tomcat
image.png在Deployment选项卡中选择war exploded项目
image.png image.pngimage.png注:如果选项中没有update classes and resources 选项,则是由于服务器添加的Artifact类型问题,一般一个module对应两种类型的Artifact,一种是war,一种是war explored。war就是已war包形式发布,当前项目是这种形式,在这种形式下on frame deactivation配置没有update classes and resources选项。war explored是发布文件目录,选择这种形式,on frame deactivation中就出现update classes and resources选项了。
通过以上步骤,就配置好了热部署,就可以顺利的进行开发工作了。
debug模式.png注意:必须以debug模式启动
参考链接:http://itjiehun.iteye.com/blog/671750
我是一名奋斗在二线城市,每天挤公交上班写代码的程序猿!励志在有限的时间能够贡献出自己最大的能量!请持续关注!我在简书等你!
网友评论