IntelliJ IDEA:在實時(JIT)模式下進行調試

2019-03-22 16:29 更新

在實時模式下進行調試

此功能僅在Ultimate版本中受支持。
以下內容僅在安裝并啟用PHP插件時有效!

IntelliJ IDEA支持在實時(JIT)模式下使用Xdebug,因此它不會一直附加到您的代碼,而是僅在發(fā)生錯誤或拋出異常時才連接到IntelliJ IDEA。Xdebug操作模式通過xdebug.remote_mode設置切換,默認情況下設置為req。該模式可用于調試命令行腳本和Web服務器調試。

配置Xdebug以在實時模式下使用

根據(jù)您是要調試命令行腳本還是使用Web服務器,請使用以下方案之一。

命令行腳本

要調試命令行腳本,請將自定義-dxdebug.remote_mode=jit指令指定為其他配置選項:

  1. 按下Ctrl+Alt+S或選擇:文件|設置(對于Windows和Linux),或IntelliJ IDEA|首選項(對于macOS)以打開“設置/首選項對話框”,然后單擊“語言和框架”下的PHP。
  2. 從PHP可執(zhí)行文件下拉列表中,選擇相關的PHP解釋器,然后單擊它旁邊的 browseButton
  3. 在打開的“CLI解釋器”對話框中,單擊“附加”區(qū)域中“配置選項”文本框旁邊的 browseButton。
  4. 在打開的“配置選項”對話框中,單擊 圖標一般添加svg以添加新條目,然后在“配置指令”字段鍵入-dxdebug.remote_mode并且在“值”字段鍵入jit。
    單擊“確定”后,將返回“CLI解釋器”對話框,其中,“配置選項”文本框會顯示-dxdebug.remote_mode=jit。

Web服務器調試

  1. 在主菜單上,選擇:運行|Web服務器調試驗證。
  2. 在打開的“Web服務器調試驗證”對話框中,選擇要驗證調試器的Web服務器。
    • 選擇“本地Web服務器”或“共享文件夾”以檢查與本地Web服務器關聯(lián)的調試程序。
      • 創(chuàng)建驗證腳本的路徑:在此字段中,指定將在其中創(chuàng)建驗證腳本的服務器文檔根目錄下的文件夾的絕對路徑。對于就地類型的Web服務器,該文件夾位于項目根目錄下。
        該文件夾必須可通過http訪問。
      • 驗證腳本的URL:在此文本框中,鍵入將在其中創(chuàng)建驗證腳本的文件夾的URL地址。如果項目根目錄映射到可通過http訪問的文件夾,則可以指定項目根目錄或其下的任何其他文件夾。
    • 選擇“遠程Web服務器” 以檢查與遠程服務器關聯(lián)的調試器。
      • 創(chuàng)建驗證腳本的路徑:在此字段中,指定將在其中創(chuàng)建驗證腳本的服務器文檔根目錄下的文件夾的絕對路徑。該文件夾必須可通過http訪問。
      • 部署服務器: 在此字段中,指定“本地服務器”或“遠程服務器”類型的服務器訪問配置以訪問目標環(huán)境。
        從列表中選擇配置,或單擊“部署”對話框中的“瀏覽( browseButton)”。
  3. 單擊“驗證”以使IntelliJ IDEA創(chuàng)建驗證腳本,將其部署到目標遠程環(huán)境,然后在那里運行。
  4. 打開報告為已加載并與Xdebug關聯(lián)的php.ini文件。
  5. 在php.ini文件中,找到該[XDebug]部分,并將xdebug.remote_mode 默認值req更改為jit。

調試會話

設置斷點并啟動調試會話,如“啟動調試會話”或“使用PHP Web頁面調試配置調試”中所述。

Xdebug會在以下兩種情況下連接到IntelliJ IDEA:

  • 發(fā)生錯誤時。在這種情況下,Xdebug在錯誤條件之后立即停在行上。原因是IntelliJ IDEA首先必須在它知道出錯之前運行錯誤的代碼。
  • 拋出異常時。如果處理異常,Xdebug會在catch塊的第一行(如果有)或在finally塊處中斷。
以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號