W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
此功能僅在Ultimate版本中受支持。
IntelliJ IDEA可幫助您運行和調(diào)試Node.js應(yīng)用程序。您可以調(diào)試從IntelliJ IDEA啟動的應(yīng)用程序以及附加到已運行的應(yīng)用程序。
按照“插件管理”中的說明在“插件設(shè)置”頁面上安裝NodeJS插件。
IntelliJ IDEA根據(jù)Node.js類型的運行配置運行Node.js應(yīng)用程序。IntelliJ IDEA還使用此配置在本地調(diào)試Node.js應(yīng)用程序。
從主菜單中,選擇:運行|編輯配置,然后在“編輯配置”對話框中,單擊工具欄上的 ,并從彈出列表中選擇“Node.js”。將打開“運行/調(diào)試配置:Node.js”對話框。
指定要使用的Node.js解釋器。這可能是一個本地Node.js的解釋或適用于Linux在Windows子系統(tǒng)的Node.js。
在“JavaScript文件”字段中,指定啟動它的應(yīng)用程序的主文件的路徑(例如,Node.js Express應(yīng)用程序的bin/www)。
指定自定義Node.js開頭的節(jié)點參數(shù)。例如,要使您的應(yīng)用程序可以進行遠程調(diào)試,請根據(jù)您的Node.js版本鍵入其中一個調(diào)試標志:對于Node.js版本6.5及更高版本:--inspect=<debugger port>
或--debug=<debugger port>
用于早于8的任何Node.js版本。默認調(diào)試器端口為5858
。
在“應(yīng)用程序參數(shù)” 文本框中,指定要在啟動時通過process.argv數(shù)組傳遞給應(yīng)用程序的Node.js特定參數(shù)。
在工具欄上的“選擇運行/調(diào)試配置”下拉列表中選擇新創(chuàng)建的Node.js配置,然后單擊它旁邊的 。應(yīng)用程序啟動,“運行工具”窗口打開,顯示應(yīng)用程序輸出。
如果在應(yīng)用程序中使用像morgan這樣的日志記錄工具,并且此工具將日志寫入文件,則可以在“運行”工具窗口的“控制臺”選項卡中查看這些日志。
如上所述,創(chuàng)建Node.js運行/調(diào)試配置 , 然后轉(zhuǎn)到“日志”選項卡。
單擊“要在控制臺字段中顯示的日志文件”字段旁邊的 ,其中列出了可用的日志文件(如果有)。
在打開的“編輯日志文件別名”對話框中,鍵入要在日志條目列表中顯示的別名,并指定日志文件的位置。選擇是要顯示此模式所涵蓋的所有文件還是僅顯示最后一個文件。
單擊“確定”返回“Node.js運行/調(diào)試配置”對話框,其中新的日志文件將添加到列表中。選中旁邊的“激活”復(fù)選框。要跳過以前的內(nèi)容,請選中“跳過內(nèi)容”復(fù)選框。
要啟用將控制臺輸出保存到日志文件,請選中“將控制臺輸出保存到文件”復(fù)選框并指定文件位置。
選擇何時顯示控制臺。
IntelliJ IDEA可以更輕松地調(diào)試Node.js應(yīng)用程序。您可以在JavaScript或TypeScript代碼中放置斷點,這樣您就不再需要任何debugger和console.log()語句。您可以做很多事情來幫助您探索代碼并了解錯誤的位置。在調(diào)試工具窗口中,您可以查看調(diào)用堆棧和當前狀態(tài)的變量,在編輯器中計算表達式,并逐步執(zhí)行代碼。
IntelliJ IDEA支持兩種調(diào)試模式:
必要時在Node.js代碼中設(shè)置斷點。
如上所述,創(chuàng)建Node.js運行/調(diào)試配置。如有必要,IntelliJ IDEA可以生成JavaScript調(diào)試配置,并與Node.js配置一起自動啟動 ,如啟動JavaScript調(diào)試配置和Node.js配置中所述。
在工具欄上的“選擇運行/調(diào)試配置”下拉列表中選擇新創(chuàng)建的Node.js配置,然后單擊它旁邊的 。將打開“調(diào)試工具窗口”。
執(zhí)行將觸發(fā)使用斷點執(zhí)行代碼的步驟。
切換到IntelliJ IDEA,現(xiàn)在啟用了調(diào)試工具窗口的控件。繼續(xù)調(diào)試會話 - 逐步執(zhí)行斷點,在幀之間切換,即時更改值,檢查暫停的程序,計算表達式以及設(shè)置監(jiān)視。
在調(diào)試Node.js應(yīng)用程序時,IntelliJ IDEA在“調(diào)試”工具窗口中顯示兩個控制臺選項卡- 控制臺和調(diào)試器控制臺。
使用IntelliJ IDEA,您可以調(diào)試在遠程環(huán)境中運行的應(yīng)用程序。IntelliJ IDEA支持使用Chrome調(diào)試協(xié)議和V8調(diào)試協(xié)議(也稱為舊版協(xié)議)進行遠程調(diào)試。在任何一種情況下,都會通過“附加到Node.js/Chrome”配置啟動調(diào)試會話。
使用Chrome調(diào)試協(xié)議進行調(diào)試:
提示:使用此協(xié)議調(diào)試以--inspect標志啟動的應(yīng)用程序。此標志用于6.3之后的Node.js版本。
根據(jù)需要設(shè)置斷點。
從主菜單選擇:運行|編輯配置,然后在打開的“編輯配置”對話框中單擊 ,并從列表中選擇“附加到Node.js/Chrome”。將打開“運行/調(diào)試配置:附加到Node.js/Chrome”對話框。
在啟動要連接的Node.js進程時,指定運行目標應(yīng)用程序的主機以及傳遞給--inspect
的端口。從“終端”工具窗口或控制正在運行的應(yīng)用程序的“運行”工具窗口中的信息消息Debugger listening <host>:<port>
中復(fù)制端口號。默認端口為9229。(提示:可選的,在“本地文件的遠程URL”區(qū)域中指定項目文件夾的遠程路徑。如果遠程環(huán)境中的應(yīng)用程序根文件夾與本地根文件夾的名稱不同,這將非常有用。)
在“附加到”區(qū)域中,選擇“以--inspect開頭的Chrome或Node.js> 6.3”。
在工具欄上的選擇運行/調(diào)試配置下拉列表中選擇新創(chuàng)建的“附加到Node.js/Chrome”配置, 然后單擊旁邊的 。在打開的“調(diào)試工具窗口”。
執(zhí)行將在斷點處觸發(fā)代碼的操作。對調(diào)試會話的控制返回到IntelliJ IDEA。
切換到IntelliJ IDEA。在“調(diào)試”工具窗口中,逐步執(zhí)行斷點,在幀之間切換,即時更改值,檢查暫停的程序,計算表達式以及設(shè)置監(jiān)視。
使用V8調(diào)試協(xié)議進行調(diào)試:
提示:使用此協(xié)議以調(diào)試使用--debug標志啟動的應(yīng)用程序。此標志用于早于8的Node.js版本。
如上所述,創(chuàng)建“附加到Node.js/Chrome”運行/調(diào)試配置,并指定傳遞給--debug
的主機和端口。默認端口為9229。
確保已使用以下參數(shù)在遠程環(huán)境中啟動要調(diào)試的應(yīng)用程序:--debug=<debugger port>
。默認端口是5858
。
在使用Chrome調(diào)試協(xié)議的調(diào)試會話期間繼續(xù) 。
IntelliJ IDEA內(nèi)置調(diào)試器可以自動重新連接到正在運行的Node.js進程。這使您可以調(diào)試使用nodemon實用程序的Node.js應(yīng)用程序,該實用程序會在代碼更新時自動重新加載Node.js進程。要調(diào)試此類應(yīng)用程序,您需要在調(diào)試模式下啟動它(帶有--inspect標志),然后使用“附加到Node.js/Chrome”調(diào)試配置并使用“自動重新連接”選項連接到該應(yīng)用程序。
安裝nodemon:
打開嵌入式終端(Alt+F12)并在命令提示符下鍵入npm install --save-dev nodemon
或yarn add nodemon --dev
以將nodemon安裝為開發(fā)依賴項。
在調(diào)試模式下使用nodemon啟動應(yīng)用程序:
創(chuàng)建并運行以下npm debug
腳本:
debug": "nodemon --inspect <path_to_the_file_that_starts_your_application>
或者,如上所述,通過Node.js運行/調(diào)試配置傳遞inspect
標志 。
調(diào)試應(yīng)用程序:
根據(jù)需要在代碼中設(shè)置斷點。
創(chuàng)建一個新的“附加到Node.js/Chrome”配置,如“調(diào)試正在運行的Node.js應(yīng)用程序”中所述,并選中“自動重新連接”復(fù)選框。
9229
),因為它是調(diào)試器正在偵聽的默認端口。但是,您可以仔細檢查在調(diào)試模式下運行應(yīng)用程序時記錄的消息中使用的端口。現(xiàn)在,每次對代碼進行任何更改并保存(Ctrl+S)它們時,nodemon都會自動重新加載應(yīng)用程序,調(diào)試器將自動重新連接到重新啟動的進程。
使用IntelliJ IDEA,您可以在兩種模式下調(diào)試應(yīng)用程序的服務(wù)器端代碼和客戶端JavaScript代碼:
創(chuàng)建復(fù)合Node.js/JavaScript調(diào)試配置:
在主菜單上選擇:運行|編輯配置。
從列表中,選擇Node.js運行配置以與JavaScript Debug配置一起啟動。在打開的對話框中,切換到“瀏覽器/實時編輯”選項卡。
選擇“啟動后”,在啟動調(diào)試會話時自動啟動瀏覽器。
在下面的文本框中,鍵入要在其中打開應(yīng)用程序的URL地址。
要使用系統(tǒng)默認瀏覽器,請選擇“默認”。
要使用自定義瀏覽器,請從列表中選擇它。請注意,僅在Chrome中完全支持實時修改。
要配置瀏覽器,請單擊“瀏覽( )”并調(diào)整打開的“Web瀏覽器”對話框中的設(shè)置。
選擇“使用JavaScript調(diào)試器”。
在Node.js應(yīng)用程序中啟用Live Edit:
按照“插件管理”中的說明在“插件設(shè)置”頁面上安裝LiveEdit插件
在“設(shè)置/首選項”對話框(Ctrl+Alt+S)中,單擊“構(gòu)建,執(zhí)行,部署”下的“調(diào)試器”,然后單擊“實時編輯”。“實時編輯”頁面將打開。
選擇“在更改時更新Node.js應(yīng)用程序”。指定在編輯器中更改代碼和在瀏覽器中顯示此更改之間的時間延遲:接受默認值300 ms
或使用相應(yīng)字段旁邊的旋轉(zhuǎn)框指定自定義值。
使用IntelliJ IDEA,您可以附加到在Vagrant框中,Docker容器中,或通過各種傳輸協(xié)議或通過SSH訪問的遠程主機上運行的Node.js應(yīng)用程序。
調(diào)試Docker容器中的Node.js應(yīng)用程序:
IntelliJ IDEA支持通過Node.js類型的運行/調(diào)試配置調(diào)試Docker容器中的Node.js應(yīng)用程序。
在開始調(diào)試Docker上的Node.js應(yīng)用程序之前:
在Docker上選擇Node.js解釋器:
如上所述,創(chuàng)建Node.js運行/調(diào)試配置 。
從下拉列表中選擇“遠程解釋器 - Docker”類型的已配置Node.js解釋器之一,或者配置一個新解釋器。
指定Docker容器設(shè)置:
單擊“編輯Docker容器設(shè)置”字段旁邊的 , 然后在打開的“編輯Docker容器設(shè)置”對話框中指定設(shè)置。
或者,選擇“自動配置”復(fù)選框以自動執(zhí)行此操作。
配置端口綁定:
注意:即使使用自動配置,您仍然需要將運行應(yīng)用程序的端口與容器的端口綁定。這些公開的端口可在Docker主機的IP地址上使用(默認為192.168.99.100)。調(diào)試Node.js Express應(yīng)用程序的客戶端時需要這樣的綁定。在這種情況下,您需要從計算機打開瀏覽器并通過應(yīng)用程序中指定的端口訪問容器主機上的應(yīng)用程序。
在“Docker容器設(shè)置”字段中單擊 ,并在打開的“編輯Docker容器設(shè)置”對話框中展開“端口綁定”區(qū)域。
在“容器端口”文本框中,鍵入應(yīng)用程序中指定的端口。
在“主機端口”文本框中,鍵入要從計算機在瀏覽器中打開應(yīng)用程序的端口。
在“主機IP”文本框中,鍵入Docker主機的IP地址,默認IP為192.168.99.100。主機在“設(shè)置/首選項”對話框的“Docker”頁面上的API URL字段中指定。
單擊“確定”返回“編輯Docker容器設(shè)置”對話框,其中將新端口映射添加到列表中。
單擊“確定”返回“運行/調(diào)試配置:Node.js”對話框。
開始調(diào)試:
根據(jù)需要在Node.js代碼中設(shè)置斷點。
在工具欄上的“選擇運行/調(diào)試配置”下拉列表中選擇新創(chuàng)建的Node.js配置,然后單擊它旁邊的 。
如上所述,在本地調(diào)試會話期間繼續(xù) 。
IntelliJ IDEA支持調(diào)試由child_process.fork()方法或集群模塊啟動的其他Node.js進程。此類進程在“調(diào)試工具”窗口的“調(diào)試器”選項卡上的“框架”窗格中顯示為線程。
設(shè)置要調(diào)試的進程中的斷點。
創(chuàng)建Node.js運行/調(diào)試配置。
打開“調(diào)試工具窗口”,“框架”下拉列表一旦啟動就會顯示其他進程作為線程:
要檢查進程的數(shù)據(jù)(變量,監(jiān)視等),請在列表中選擇其線程,并在“變量和監(jiān)視”窗格中查看其數(shù)據(jù)。選擇其他進程時,窗格的內(nèi)容會相應(yīng)更新。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: