我想为我的应用程序启动调试模式。但我需要从命令提示符启动调试模式。可能吗 ?并且程序在tomcat 5.5和tomcat 6之间会有所不同。?
答案 0 :(得分:102)
$ catalina.bat jpda start
在Linux / Unix上
$ catalina.sh jpda start
答案 1 :(得分:41)
对于Windows首先设置变量:
set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket
以调试模式启动服务器:
%TOMCAT_HOME%/bin/catalina.bat jpda start
对于unix第一个导出变量:
export JPDA_ADDRESS=8000
export JPDA_TRANSPORT=dt_socket
并以调试模式启动服务器:
%TOMCAT_HOME%/bin/catalina.sh jpda start
答案 2 :(得分:19)
在IDE中,创建一个远程调试配置,将其配置为默认的JPDA Tomcat端口,即端口8000.
从命令行:
Linux的:
cd apache-tomcat/bin
export JPDA_SUSPEND=y
./catalina.sh jpda run
视窗:
cd apache-tomcat\bin
set JPDA_SUSPEND=y
catalina.bat jpda run
从IDE执行远程调试配置,Tomcat将开始运行,您现在可以在IDE中设置断点。
注意:
JPDA_SUSPEND=y
行是可选的,如果您希望Apache Tomcat在步骤3完成之前不开始执行,这将很有用,如果您想解决应用程序初始化问题,则非常有用。
答案 3 :(得分:11)
简短的回答是在启动JVM时添加以下选项。
JAVA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8080"
答案 4 :(得分:4)
首先,导航到TOMCAT-HOME/bin
目录。
然后,在命令行中执行以下命令:
catalina.bat jpda start
如果Tomcat服务器在Linux下运行,只需调用catalina.sh
程序
catalina.sh jpda start
对于Tomcat 5.5和Tomcat 6来说,它是一样的
答案 5 :(得分:1)
在调试模式下运行tomcat有两种方法
使用jdpa run
使用JAVA_OPTS
首先设置环境。然后使用以下命令启动服务器。
export JPDA_ADDRESS=8000
export JPDA_TRANSPORT=dt_socket
%TOMCAT_HOME%/bin/catalina.sh jpda start
sudo catalina.sh jpda start
请参阅此article以获取更多信息,这是明确定义的
答案 6 :(得分:1)
这些说明适用于mac os 10.13.3上的apache-tomcat-8.5.20,使用jdk1.8.0_152:
$ cd /path/to/apache-tomcat-8.5.20/bin
$ export JPDA_ADDRESS="localhost:12321"
$ ./catalina.sh jpda run
现在从IntelliJ / Eclipse连接到端口12321并享受远程调试。
答案 7 :(得分:1)
如果您想在Windows上通过Powershell进行操作,这对我来说是有效的
$ env:JPDA_SUSPEND =“ y”
$ env:JPDA_TRANSPORT =“ dt_socket”
/path/to/tomcat/bin/catalina.bat jpda开始
答案 8 :(得分:0)
在catalina.bat内部设置您希望启动调试器的端口
if not "%JPDA_ADDRESS%" == "" goto gotJpdaAddress
set JPDA_ADDRESS=9001
然后您可以使用
启动调试器catalina.bat jpda
现在从Eclipse或IDEA选择远程调试并通过连接到端口9001开始调试。