[英]How to remotely debug the webapplication running on tomcat service?
我在serverA的tomcat 6
上有我的Web应用程序。 我运行的是tomcat
,即通的服务tomcat6w.exe
趴在<tomcat_home>/bin
的文件夹。 为了远程调试weabbplication,我在网络上不同博客/站点的不同行末空白处添加了以下建议行。 由于应用程序在同一端口上运行,因此将该端口称为8443。
-Xdebug-Xrunjdwp:transport=dt_socket,address=8443,server=y,suspend=n
现在通过服务器B上的eclipse
,我提到主机为serverA和端口8443,然后单击debug。 2-3分钟后,它会建立连接而没有给出任何错误。但是现在当我在IE
点击web应用程序的url时,它没有显示并说IE
无法显示网页。 但是,一旦我删除了上述调试参数并点击了url,应用程序就可以正常工作了。 当tomcat作为窗口服务运行时,我没有得到应该如何调试应用程序的信息?
有关信息,以下是我双击tomcat服务时的参数
-- Under java tab
--jvm section value
C:\Program Files\Java\jre6\bin\client\jvm.dll
--java classpath section value
C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin\bootstrap.jar
--java options section value
-Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 6.0
-Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 6.0
-Djava.endorsed.dirs=C:\Program Files\Apache Software Foundation\Tomcat 6.0\common endorsed
-Djava.io.tmpdir=C:\Program Files\Apache Software Foundation\Tomcat 6.0\temp
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=C:\Program Files\Apache Software
Foundation\Tomcat6.0\conf\logging.properties-XX:MaxPermSize=512M
-Djavax.net.ssl.trustStore=c:/.keystore
-Djavax.net.ssl.trustStorePassword=changeit-Xdebug
-Xrunjdwp:transport=dt_socket,address=8443,server=y,suspend=n
--Under startup tab
--class section value
org.apache.catalina.startup.Bootstrap
--workingpath section value
C:\Program Files\Apache Software Foundation\Tomcat 6.0
--arguments section value
start
--mode section value
jvm
在“ Java选项”选项卡中,添加以下内容。 记得放
-Xdebug
和
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8733
在分隔线上 。
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8733
您可以使用JvmOptions参数传递JVM选项:
tomcat.exe //TS// ++JvmOptions -Xdebug;-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1044
要么
tomcat.exe //RS// ++JvmOptions -Xdebug;-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1044
当我需要远程调试在Tomcat上部署的应用程序时,通常会通过Catalina.bat脚本而不是Windows服务来启动服务器。 实际上,要启用远程调试,应该在执行catalina.bat脚本时提供JPDA参数:
卡塔利娜jpda开始
如果确实需要将服务器作为服务启动,则可以尝试编辑服务器的定义,以便为它提供JPDA参数。
您也可以停止Tomcat服务,而只需通过执行catalina.bat脚本来启动服务器。
希望能对您有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.