龙空技术网

如何在代码项目分离的情况下,动态调试Tomcat服务器下的逻辑?

普通上班族的日常 130

前言:

今天兄弟们对“jsp怎么打断点调试”都比较重视,各位老铁们都想要了解一些“jsp怎么打断点调试”的相关内容。那么小编在网络上收集了一些对于“jsp怎么打断点调试””的相关文章,希望咱们能喜欢,看官们快快来了解一下吧!

背景:大部分时候,公司项目的代码都特别多,启动需要很长时间,超过10分钟。如果我们每修改一段逻辑就去启动一下服务,是很费时费力的。如何在不重启的情况下调试自己的逻辑呢?见下图,我公司tomcat服务启动需要的时长。

web 项目启动程序

此处介绍一个及时调试服务器的方法。(记住:如果新增了类,方法,是无法同步的,此时就需要重启才能调试。

1.首先调整Tomcat配置文件为开发态,例如我本地路劲D:\gasline\A8\ApacheJetspeed\conf\web.xml,找到development,设置为true。见下截图,之前有初学者在刚接触web项目的时候,修改jsp也无法及时加载,原因也是这里引起的。当然,浏览器要清空一下缓存,不然就算设置了开发(development==true)态,有时也是无法加载最新的代码的

web.xml

开发在调试过程中,通常建议都禁用缓存,见下图设置,这样就能保证每次加载的都不是缓存的内容了。

2.在开发工具中下载安装文件同步工具FileSync

在eclipse中下载安装文件同步工具

3.安装成功后,右键项目--属性可以看到出现了文件同步

3.把项目的class文件同步到跟服务器上同目录的文件路径中,见下图,seeyon为项目名(项目名可根据实际情况进行调整,手动输入后,web项目会自动在对应路劲下创建相应的文件夹)。web项目通常情况下,class文件都在“项目/WEB-INF/classes”下

4.设置同步信息,见下图。

5.设置服务器调试端口,windows在tomcat对应的bat文件中设置set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8112,我本地是设置的D:\gasline\A8\ApacheJetspeed\bin\catalina.bat,意思是开发端口8112用户用户进行调试。

catalina.bat文件调整

6.启动服务,在需要调试类中打上断点。见截图!右键,找到截图的debug configurations,点击找到Remote Java Application,鼠标双击,会出现刚打断点的java类名。

鼠标右键进行调试设置

调试参数配置

设置成功后,点击最下面的debug。如果一切设置成功,则可以在debug窗口中找到它,见截图,调试服务启动了

7.访问该web项目,找到对应的请求,见下图,我本地在点击login按钮的时候,去调试服务器代码。

请求提交进行调试

8.见下图,逻辑已经进入了我项目的调试服务,就可以开始按照常规操作调试了

注意:如果本地项目的代码跟服务器代码逻辑不统一,则会出现调试逻辑错乱的问题,需要重新保存一下文件(如果没有方法、类改变的情况下。),再次请求,就能正常调试了

调试窗口

标签: #jsp怎么打断点调试