在IJ上调式远程jetty和tomcat

开发的应用在本地运行得好好的,但部署到服务器,应用服务能正常启动起来,运行就总是出问题.对于这种场景,远程调式就比较有用.具体使用如下:

一.使用IJ打开项目

(以前我称为IDEA,既然新Logo是IJ,我也这样叫吧),点击右上角的Edit Configurations.
在IJ上调式远程jetty和tomcat_第1张图片

二.新建一个远程调试配置

1.点左上角的加号,再选Remote,然后Name随意.
2.填写应用服务器的IP和一个未使用的端口(这个端口不是应用服务器的端口),
3.选择源代码类路径.
4.复制Java运行参数来启动Servlet应用服务器.
5.当然是点OK按钮完成配置

三.将当前应用打包,部署到应用服务器.

四.使用刚才复制出来的参数来启动应用服务器.

1.jetty做法.使用d:\jdk8\bin\java "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8081" -jar start.jar可以达到效果来启动jetty
2.tomcat做法:tomcat-8\bin\catalina.bat,添加set JAVA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8081" 然后点start.bat启动可以达到效果来启动tomcat

五.回到IJ,点右上角的调试按钮.在需要的地方下断点.

六.在浏览器打开请求(这里当然是向远程服务器发请求).

这种方式不是只适用某个特定的应用服务器,weblogic同样应适用,Java应用程序也应适用.核心是启动的时候要以以上参数来启动应用服务器即可.远程应用服务器的代码应与本地的代码一样,不一样我也不知出现什么情况.为更保证一样,本地全量打包(不是增量打包)远程服务器可以和本地一样都使用svn或git之类的代码管理.然后都使用maven或gradle来编译打包.

你可能感兴趣的:(tomcat,应用服务器,jetty,idea,远程调试)