IntelliJ IDEA:在實(shí)時(shí)(JIT)模式下進(jìn)行調(diào)試

2019-03-22 16:29 更新

在實(shí)時(shí)模式下進(jìn)行調(diào)試

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

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

配置Xdebug以在實(shí)時(shí)模式下使用

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

命令行腳本

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

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

Web服務(wù)器調(diào)試

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

調(diào)試會(huì)話

設(shè)置斷點(diǎn)并啟動(dòng)調(diào)試會(huì)話,如“啟動(dòng)調(diào)試會(huì)話”或“使用PHP Web頁面調(diào)試配置調(diào)試”中所述。

Xdebug會(huì)在以下兩種情況下連接到IntelliJ IDEA:

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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號