1. 程式人生 > >Tomcat: 開啟遠端除錯Remote Debugging模式

Tomcat: 開啟遠端除錯Remote Debugging模式

2018.11.01

文章目錄

前言

Tomcat的遠端除錯模式是個常用且好用的功能,一旦專案部署到遠端伺服器上時(比如sit環境),就可以通過遠端除錯模式打斷點進行debug。本文翻譯自一技術部落格1

方法

設定JVM啟動命令引數就可以為Tomcat開啟遠端除錯模式,可以通過JPDA_OPTSCATALINA_OPTSJAVA_OPTS來設定。但一般不推薦設定JAVA_OPTS

,因為它會影響到JVM裡的所有應用,而CATALINA_OPTS僅對Tomcat有效。

方法一:JPDA_OPTS

在CATALINA_HOME/bin目錄下新建一個setenv.sh(Linux)或setenv.bat(Windows),新增如下內容:

# Linux
export JPDA_OPTS="-agentlib:jdwp=transport=dt_socket, address=1043, server=y, suspend=n"
# Windows
set JPDA_OPTS="-agentlib:jdwp=transport=dt_socket, address=1043, server=y, suspend=n"

一般建議採用setenv.*檔案來設定額外的配置,而不是直接寫進catalina.*中,而setenv.*檔案會被Tomat自動讀取。啟動Tomcat:

<CATALINA_HOME>/bin/catalina.sh jpda start

方法二(建議):CATALINA_OPTS

類似地,新建setenv.*檔案:

# Linux
export CATALINA_OPTS="-agentlib:jdwp=transport=dt_socket,address=1043,server=y,suspend=n"
# Windows
set CATALINA_OPTS=
"-agentlib:jdwp=transport=dt_socket,address=1043,server=y,suspend=n"

Old-fashioned方法

下面也是常見的引數配置,但它適用於Java 5.0之前的版本;上述配置則適用於Java 5.0及之後的版本。所以不推薦使用。

# 舊的配置方法
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=1043, suspend=n

  1. Enable Tomcat Remote Debug ↩︎