用Eclipse調試Node.js代碼
node.js是基于Google V8的,而Google V8有一個Eclipse的調試插件,這個插件同樣也支持node.js。
1、安裝Eclipse debugger for V8
這個,用過Eclipse的應該都知道,不過還是簡單說下吧:

選擇“Install New Software”

點“Add”

Location為: http://chromedevtools.googlecode.com/svn/update/dev/
Name你喜歡,整一個方便你記憶的就好。
點擊確定后,在“Work with“選擇你剛才添加的站點:

然后選擇“Chromium JavaScript Remote Debugger”,然后一直下一步,安裝完后會提示重啟Eclipse,重啟Eclipse后就可以開始調試了。
2、怎樣調試Nodejs?
從插件名稱中的“Remote”可以預想到這是一個遠程調試的工具,大概的流程就是node開一個tcp的調試端口,然后這個調試工具通過這個tcp端口來和node通訊實現調試。
要啟用node的調試端口,在執行node腳本的時候需要添加 –-debug 參數:
- node --debug[=port] NodeApp.js
- or
- node --debug-brk[=port] NodeApp.js
其中port為開啟的調試端口,默認為5858.
--debug和--debug-brk的區別在于,--debug執行腳本的時候會直接運行該腳本,而--debug-brk執行腳本的時候,并不會馬上執行,而是等待調試器的連接,然后按調試器的指令來執行。
我們寫個簡單的代碼來用于調試:

然后用 node –debug hello_world.js 來運行:

可以看到輸出一行:debugger listening on port 5858
5858為默認端口,你也可以用 --debug=5859 來指定不同的端口
好,現在node的調試模式已經運行起來了,我們去配置Eclipse來連接到node并進行調試。
首先我們要到debug config里面去添加一個新的V8 VM的調試配置:

右鍵,選擇“new”來新建一個配置項:

因為我們剛才node起的調試端口為默認的5858,所以這里我們的端口就是5858,名稱我們定為“Node-5858”。
然后點debug開始調試,或者你使用下面的方式開始調試:
調試模式大概會是這樣:

(注:這是調試視圖,點擊右上角的臭蟲按鈕。如果你的Eclipse上沒有這個按鈕,請點擊上圖右上角臭蟲左邊的添加按鈕,找到debug然后添加就可以)
在調試模式連接成功后,你會在你的“Project Explorer”里面看到多了一個“Node-5858”(剛才debug config里面設置的名稱)的項目,里面的文件都是調試的文件或者調試的文件require進來的文件。
打開這些文件,你就可以在里面加斷點開始調試了。例如上圖的第8行加了一個斷點,則每次在瀏覽器訪問的時候都會進入這個斷點。

其他的調試和你平時用Eclipse調試其他代碼是一樣的。
Eclipse的調試快捷鍵是,F5單步進入,F6單步跳過。
最后說一下 --debug-brk 方式啟動的調試模式:

可以看到僅僅是輸出了一行“debugger listening on port 5858”而已,后面并沒有繼續輸出“Server running at …..”。
這是因為用 啟動的調試模式并不會馬上執行代碼,而是會等待調試器的連接(可以理解為在hello_world.js的第一行加了斷點),具體還是各位童鞋自己實踐吧。
參考: https://github.com/joyent/node/wiki/Using-Eclipse-as-Node-Applications-Debugger
原文:http://club.cnodejs.org/topic/4f16442ccae1f4aa27001105
【編輯推薦】