1. 程式人生 > >IntelliJ IDEA 2018.2.2遠端除錯Tomcat的配置方法

IntelliJ IDEA 2018.2.2遠端除錯Tomcat的配置方法

公司專案放在遠端伺服器上,之前都是將專案打包放上去執行後在log中檢視相關除錯資訊,發現問題後在本地編輯器修改後再次打包上傳除錯,但是這種方式實在是讓人抓狂,一則不斷的在大量的log中檢視有效資訊太累,而且log中的資訊也有限;再則一直重複編輯-打包-上傳-除錯很折磨人,所以才想到了遠端除錯。搜尋了網上的方法要麼就是設定介面跟我不一樣,要麼就是即使跟他們設定的一樣依然不起作用,不進斷點,在嘗試了多次以後終於調通,在這裡記錄一下,也給大家做個參考!

大前提:本地工程和釋出到遠端伺服器上的工程程式碼要完全一致。重點!!!!

首先,配置Tomcat Server,步驟如下:

點選上圖Edit Configurations,出現如下介面,點選 + 選擇Tomcat Server-->Remote, 然後出現右側資訊。

 在Server選項卡中,選擇一個你本機的Tomcat服務,我在填這一欄之前它是空的,需要點選後面的configuration配置到自己本機的Tomcat;

URL:我填寫的是我遠端伺服器部署的專案地址,用的域名+埠號

下面的Host和port就是URL的拆分,這個大家應該都懂。

配置完Server再點選Startup/Connection-->Debug,然後會看到紅框的那一段命令,這裡的8000是我遠端伺服器上Tomcat中的除錯埠,具體可檢視遠端伺服器上tomcat-->bin-->catalina.bat檔案中的設定項“set JPDA ADDRESS=8000”,這個埠是可以更改的,不管改成什麼,都要保持遠端伺服器上的Tomcat中的除錯埠和本地IDEA中的debug配置中的埠一致,如下圖這幾個地方的埠號要一致,並且遠端伺服器的這個埠號要確保可以訪問。

 

到此,本地IDEA的Tomcat Server配置完畢,點選Apply-->OK即可。

 

然後,配置遠端伺服器上tomcat中的檔案

在配置之前先將上一步驟中debug的那條命令列先拷貝下來:-agentlib:jdwp=transport=dt_socket,address=8000,suspend=n,server=y

然後分情況配置:

Windows(我自己的伺服器是Windows,親測沒問題)

  在Tomcat-->bin-->catalina.bat檔案的第一行新增 set JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,address=8000,suspend=n,server=y

Linux (我沒測過這個,大家如果是Linux 作業系統可以試試,應該也沒問題,區別在於Linux 系統需要修改的檔案是catalina.sh,匯入關鍵字為export,匯入值需要用單引號''括起來)

       在Tomcat-->bin-->catalina.sh檔案的第一行新增 export JAVA_OPTS='-agentlib:jdwp=transport=dt_socket,address=8000,suspend=n,server=y'

修改完成後儲存,並重啟tomcat服務

至此,IntelliJ IDEA 遠端除錯 Tomcat 的配置已經完成了.

 

驗證:在本地IDEA的程式碼中設定斷點,然後啟動除錯,啟動除錯後會輸出如下內容,接著瀏覽器會自動彈出並訪問你的遠端專案地址,專案執行到斷點時會進入除錯資訊。這樣就可以進行遠端Tomcat的除錯了。

Connected to server
Connected to the target VM, address: '*******:8000', transport: 'socket',

 

寫的有些語無倫次,請見諒!