簡體   English   中英

使用Intellij Idea進行遠程調試

[英]Remote Debugging with Intellij Idea

我最近了解了Idea下的遠程調試程序。 我所做的是在Run |下復制遠程調試的配置 在Idea中調試配置到命令行java執行參數。 實際的命令行參數是:

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000

如果是腳本,我將這些命令添加到它。 通過這樣做,命令行顯示消息:

Listening for transport dt_socket at address: 8000

因此可以使用本地源代碼進行調試。 但是,我沒有正確理解遠程調試的工作原理。 任何知道遠程調試實際如何工作的人,請給我一個解釋。

謝謝!

遠程調試意味着您可以在本地或遠程計算機上的任何位置運行Java代碼。 當它在調試模式下運行時,您可以使用TCP網絡連接從IDE連接到它並執行調試。 IDE需要擁有正在運行的類的源代碼,以便您可以在此代碼中放置斷點並執行步進,檢查變量等。

如果您對技術細節感興趣,請參閱JPDA文檔

考慮一種情況,您希望在應用程序中修復某些內容,但由於其他依賴項,您的應用程序只能在服務器上運行。 這就是遠程調試的用武之地。 您只需通過提供主機名和端口連接服務器,然后將其與相應的環境連接即可。

這個怎么運作:

  1. 要調試的應用程序將套接字連接到自身,然后將開始監聽調試指令。
  2. 調試器將自己綁定到該套接字,然后發送指令。

這是測試不同環境中的代碼的最佳方法。

在使用遠程調試之前,我們需要確保以下幾點。

  1. 我們在服務器中使用JBOSS。
  2. configure - JBOSS_HOME / bin / run.conf JAVA_OPTS =“$ {JAVA_OPTS} -Xdebug -Xnoagent -Xrunjdwp:transport = dt_socket,address = 8787,server = y,suspend = n”

  3. 現在將服務器IP和端口號添加到intellij遠程調試中。 4.您應該在本地與項目服務器同步的項目的最新版本,否則將不允許調試。

  4. 你需要啟動項目的intellij服務器。
  5. 然后啟動遠程調試。
  6. 在本地放置一個調試點,當我們在服務器上開始測試時,當它到達調試點時,它將停止並等待直到你處理它。

另一點是,它將保留隊列中的所有請求,並且不允許任何人通過斷點,這可能會阻止其他用戶對其進行測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM