如何在Ubuntu上調試Node.js應用
在Ubuntu上調試Node.js應用有多種高效方法,以下是最常用的三種方案,覆蓋從基礎到進階的場景:
這是最基礎的調試方式,無需額外工具,適合快速定位問題。
啟動調試模式:
在終端中運行以下命令,其中your_script.js是你的入口文件。若需要在代碼第一行暫停(方便檢查初始狀態),用--inspect-brk替代--inspect:
node --inspect your_script.js
成功啟動后,終端會輸出調試服務器地址(如Debugger listening on ws://127.0.0.1:9229/xxxxxx)。
連接Chrome DevTools:
打開Chrome瀏覽器,訪問chrome://inspect,在“Remote Target”列表中找到你的Node.js應用(顯示為“Node.js”或入口文件名),點擊“inspect”鏈接,會打開專用的調試窗口。
調試操作:
your_script.js),點擊行號左側添加斷點(紅色圓點)。VSCode是Node.js開發的最佳IDE之一,內置強大的調試功能,無需手動配置瀏覽器。
準備項目:
打開VSCode,通過File > Open Folder導入你的Node.js項目文件夾。
創建launch.json文件:
點擊左側邊欄的“Run and Debug”圖標(或按Ctrl+Shift+D),點擊頂部“create a launch.json file”,選擇“Node.js”環境。VSCode會自動生成.vscode/launch.json文件,修改program字段指向你的入口文件(如"${workspaceFolder}/app.js")。
啟動調試:
在代碼中添加debugger;語句(或直接點擊行號左側設置斷點),點擊“Run and Debug”面板中的綠色“Run”按鈕(或按F5),VSCode會自動啟動Node.js進程并附加調試器。此時,你可以像在Chrome DevTools中一樣進行斷點調試、查看變量、調用堆棧等操作。
Nodemon會在代碼修改后自動重啟應用,結合調試功能可大幅提升開發效率。
安裝Nodemon:
在項目目錄下運行以下命令,將其添加為開發依賴:
npm install --save-dev nodemon
配置調試腳本:
在package.json的scripts部分添加debug腳本,使用nodemon啟動調試模式(以--inspect為例):
"scripts": {
"debug": "nodemon --inspect app.js"
}
將app.js替換為你的入口文件。
啟動調試:
在終端中運行npm run debug,Nodemon會啟動Node.js應用并開啟調試服務器。此時,你可以用Chrome DevTools或VSCode連接到localhost:9229進行調試。每次修改代碼并保存后,Nodemon會自動重啟應用,調試器會自動重新附加,無需手動重啟。
9229,若被占用,可通過--inspect=端口號(如--inspect=8888)指定其他端口。--inspect-brk時,代碼會在第一行暫停,等待調試器連接)。以上方法覆蓋了Ubuntu下調試Node.js應用的主要場景,可根據團隊習慣或項目需求選擇合適的方式。