1. 程式人生 > >tomcat開啟遠端除錯功能

tomcat開啟遠端除錯功能

在日常開發中,有時需要對遠端伺服器上的應用進行遠端除錯,對於tomcat,要進行遠端除錯其實很簡單,只需要在啟動tomcat時開啟jpda服務即可。

什麼是JPDA呢?

JPDA(Java Platform Debugger Architecture) 是 Java 平臺除錯體系結構的縮寫,通過 JPDA 提供的 API,開發人員可以方便靈活的搭建 Java 除錯應用程式。JPDA 主要由三個部分組成:Java 虛擬機器工具介面(JVMTI),Java 除錯線協議(JDWP),以及 Java 除錯介面(JDI)。而像Eclipse和IDEA這種開發工具提供的圖形介面的除錯工具,其實就是實現了JDI。關於JPDA的詳細資訊,可以檢視developerWorks上的系列文章——

深入Java除錯體系

tomcat使用如下方式進行啟動jpda:

  1. ./catalina.sh jpda start  
預設情況下,遠端除錯的預設埠為8000,可以通過JPDA_ADDRESS進行配置,指定自定義的埠,另外,還有兩個可以配置的引數
  • JPDA_TRANSPORT:即偵錯程式和虛擬機器之間資料的傳輸方式,預設值是dt_socket
  • JPDA_SUSPEND:即JVM啟動後是否立即掛起,預設是n

可以在catalina.sh中進行配置:

  1. JPDA_TRANSPORT=dt_socket  
  2. JPDA_ADDRESS=5005  
  3. JPAD_SUSPEND=n  
或者通過JPDA_OPTS進行配置:
  1. JPDA_OPTS='-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005’  
這樣啟動之後 ,就可以通過Eclise或IDEA進行遠端除錯了,IDEA具體如何進行遠端除錯,請參考另一篇文章

網上有很多文章提供了另一種開啟遠端除錯功能的方式,即通過JAVA_OPTS指定相應的JPDA引數:

  1. JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005”  
使用這種方式開啟遠端除錯功能,在啟動時沒有什麼問題,也能夠正常的進行遠端除錯,但是在停止tomcat時:
  1. ./catalina.sh stop  
會出現如下錯誤:
  1. ERROR: transport error 202: bind failed: Address already in use  
  2. ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)  
  3. JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [debugInit.c:750]  
  4. FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)  

導致不能正常終止java程序,需要手動的kill掉,所以還是應該使用前面的方式開啟遠端除錯功能。

相關推薦

tomcat開啟遠端除錯功能

在日常開發中,有時需要對遠端伺服器上的應用進行遠端除錯,對於tomcat,要進行遠端除錯其實很簡單,只需要在啟動tomcat時開啟jpda服務即可。 什麼是JPDA呢? JPDA(Java Platform Debugger Architecture) 是 Java 平臺除

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

2018.11.01 文章目錄 前言 方法 方法一:`JPDA_OPTS` 方法二(建議):`CATALINA_OPTS` Old-fashioned方法 前言 Tomcat的遠端除錯

eclipse如何對伺服器的tomcat開啟遠端除錯

1、切換到普通使用者 su username 2、在普通使用者的tomcat的bin目錄下的catelina.sh檔案,新增如下程式碼,告訴tomcat要開啟這個埠作為遠端除錯了 CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,

tomcat開啟遠端除錯

今天把專案布到伺服器報錯了,就想著遠端除錯一下,結果按照網上說的。在tomcat的bin目錄下開啟視窗輸入catalina.bat jpda start開啟遠端除錯。然後顯示8000埠開啟,idea中進行相關操作:把localhost改為伺服器地址就可以了。結果執行出錯,表示

Java專案開啟遠端除錯tomcat、springboot)

當我們執行一個專案的時候,一般都是在本地進行debug。但是如果是一個分散式的微服務,這時候我們選擇遠端debug是我們開發的利器。 環境 apache-tomcat-8.5.16 Linux 如何啟用遠端除錯 tomcat開啟遠端除錯

springboot專案使用idea開啟遠端除錯

遠端除錯是除錯伺服器的有效手段,遠端伺服器執行的應用可以在原生代碼中打斷點除錯,能讓開發人員準確定位伺服器上的問題。 一、開啟遠端除錯前提:原生代碼與伺服器程式碼一致, 二、開啟遠端除錯步驟   1.開發工具配置   idea端開啟Edit configurations,      增加Remot

tomcat 開啟遠端debug

修改 tomcat  目錄下  /bin/catelina.sh p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px "Andale Mono"; color: #2fff12; background-color: rgba(0, 0

maximo開啟遠端除錯

在weblogic目錄下查詢 Oracle\Middleware\user_projects\domains\base_domain\bin\setDomainEnv.cmd中修改: 1、搜尋【%DEBUG_PORT%】,修改 【set DEBUG_PORT=17001】 中的埠,比如服務埠

Tomcat配置遠端除錯

確認部署的環境 Linxu系統 apache-tomcat-8.0.23/bin/startup.sh開始處中增加如下內容: declare -x CATALINA_OPTS="-server

intellij idea用tomcat進行遠端除錯

1.  首先在IDEA中check out出來你要除錯的工程的程式碼,然後在IDEA開啟這個工程。 2.  因為我們用的是Tomcat,所以在IDEA中點選右上角那個“Edit Configurations”按鈕,然後在彈出的介面中點選左上角的加號,選擇tomcat ser

linux tomcat 配置遠端除錯

1.利用xftp工具找到/data/webapp/tomcat/bin目錄下的catalina.sh檔案(也可以使用xshell用命令編輯該檔案) 編輯該檔案,在檔案的最開始新增如下內容 CATALINA_OPTS="-server -Xdebug -Xnoagent -Djava.comp

TOMCAT開放遠端除錯

方法1、 WIN系統,在catalina.bat裡: SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8

tomcat 8 遠端除錯java

tomcat遠端除錯 修改遠端 catalina.sh 檔案 在下面增加一行(在 JPDA_ADDRESS="localhost:8000" 增加一行JPDA_ADDRESS="101.200.229.38:8000"  tomcat8驗證通過  並把 JPDA_ADDRE

IDEA 14在MAC下如何對tomcat進行遠端除錯

在開發過程中,有時需要進行遠端除錯,使用IDEA如何進行遠端除錯呢,其實很簡單,首先tomcat需要開啟遠端除錯,如何開啟呢?參考另一篇文章。 然後在IDEA中設定如下: 1、開啟配置頁面 2、新增遠端除錯配置 3、進行引數配置 其中Host為遠端伺服器的地址,當然

Java springboot專案開啟遠端除錯

開頭語: 當我們執行一個專案的時候,一般都是在本地進行debug。但是如果是一個分散式的微服務,這時候我們選擇遠端debug是我們開發的利器。 1、maven打包成jar的時

Xampp + Zend Studio 開啟Xdebug除錯功能

一步:配置Xdebug環境 開啟Xampp安裝目錄的php\php.ini配置檔案找到[XDebug]項,開啟以下配置 ;擴充套件dll引用路徑(安裝好Xampp後php\ext目錄下就已有了php_

使用Eclipse+tomcat進行遠端除錯

轉自http://blog.csdn.net/sunyujia/article/details/2211109 今天決定做件有意義的事,寫篇圖文並茂的blog,為什麼要圖文並茂?因為很多事可能用語言也說不明白,從以前我發表的一篇文章可以看得出來,http://blog.cs

Tomcat開啟遠端監控Jconsole配置

確認是否開啟 首先ps -ef|grep tomcat 檢視一下tomcat程序的資訊,如果出現下面的資訊 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticat

window系統tomcat進行遠端除錯

1.命令列啟動遠端除錯 java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8888 -jar xxx.jar 2.tomcat將引數新增到Java Options: 3.idea

java 遠端除錯 Tomcat配置遠端除錯

http://www.ibm.com/developerworks/cn/opensource/os-eclipse-javadebug/index.html 相 信做過Java Web專案的朋友都非常熟悉MyEclipse(汗,有不知道的?),整合Tomcat一點dep