首页 > 代码库 > 远程调试部署在Tomcat中的应用服务(2种配置方式)

远程调试部署在Tomcat中的应用服务(2种配置方式)

远程调试部署在Tomcat中的应用服务(tomcat 远程debug 配置文件)

方法一(编辑catalina.bat)

1. D:\iVMS_Platform\bin\apps\ivms6-liteTomcat\bin   编辑catalina.bat文件

set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG%"

替换成这样:

set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG%  -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"

 

2. D:\iVMS_Platform\bin\apps\ivms6-liteTomcat\bin 编辑startup.bat文件

加上jdk的环境:

set JAVA_HOME=D:\iVMS_Platform\bin\apps\jdk

set JRE_HOME=D:\iVMS_Platform\bin\apps\jdk

 

3. 点击startup.bat文件启动项目

 

4. 在Eclipse IDE中点击需要调试的类,右键->Debug as->Debug Configurations->选中Remote Java Application->左上角点击增加按钮->填写Host(远程应用所在的服务器的IP)->填写Port(步骤一中在catalina.bat文件中修改的远程调试端口)->Apply->Debug  效果如下:

 

 技术分享

 

 

5. 在Eclipse IDE中,显示图标技术分享,表示远程连接成功,在该类中打断点,进行应用服务操作,触发调用的接口即可调试,和本地调试一样。(调试的代码和服务器中的代码保持一致,不然会出现问题)  效果如下图所示:

 

 

 技术分享

 

步骤一:修改catalina.bat文件其实就是在tomcat启动时设置一些虚拟机参数,使服务器允许远程连接功能,address=7878表示远程连接的端口号,可以设置成任意其他不冲突端口。

技术分享

 

该窗口出现,说明远程调试配置成功

方法二(编辑startup.bat)

call "%EXECUTABLE%" start %CMD_LINE_ARGS%

替换为:

call %EXECUTABLE%" jpda start %CMD_LINE_ARGS%

此之前加上

set JPDA_TRANSPORT=dt_socket

set JPDA_ADDRESS=8787

set JPDA_SUSPEND=n

 

 

1. 修改tomcat的启动脚本startup.bat。复制startup.bat为startup-debug.bat,然后打开startup-debug.bat,找到call "%EXECUTABLE%" start %CMD_LINE_ARGS%这一行,修改为“call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%”,然后在上面添加三行:

set JPDA_TRANSPORT=dt_socket

set JPDA_ADDRESS=9000

set JPDA_SUSPEND=n

 

启动startup-debug.bat文件启动项目,后续和方法一一样。

 

 

为什么要在setclasspath.bat设置JAVA_HOME和JRE_HOME的变量的值?

在windows环境下以批处理文件方式启动tomcat,只要运行<CATALINA_HOME>/bin/startup.bat这个文件,就可以启动Tomcat。在启动时,startup.bat会调用catalina.bat文件,而catalina.bat会调用setclasspath.bat文件来获取JAVA_HOME和JRE_HOME这两个环境变量的值,因此若要在tomcat启动时指向特定的JDK,则需在setclasspath.bat文件的开头处加入以下内容: 

rem --------------------------------------------------------------------------- 
rem Set CLASSPATH and Java options 
rem 
rem $Id: setclasspath.bat 730396 2008-12-31 13:49:30Z markt $ 
rem --------------------------------------------------------------------------- 

set JAVA_HOME=C:\Java\jdk1.60 
set JRE_HOME=C:\Java\jre1.60 

C:\Java\jdk1.60就是JDK的安装路径。 
同下:

默认情况下,JDK安装好后,在系统环境变量里设置好JAVA_HOME就可了,但如果系统有多个web服务器,而每个WEB服务器根据需要,要使用不用的JDK版本,那么如下设置就可以解决此类问题。

在tomcat所在目录下的bin子目录里面有个setclasspath.bat文件,

打开并找到 if not "%JAVA_HOME%" == "" goto gotJdkHome 字样。

该行代码上面加上set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_18

当然后面的值就是为这个tomcat所指定的特定的JDK安装目录。

设置好启动tomcat即可。


rem表示注释。

注:需要说明的是部分版本的tomcat5是没有bat文件的 它的启动直接是exe,暂时还没想到方法。

远程调试部署在Tomcat中的应用服务(2种配置方式)