how-to-debug-gruntfile-task


Node Debug

关于node的调试有多种方式
第一种:node 内建调试
如执行命令

1
node debug *.js

*(星号)表示文件路径/文件名

help commands:
Commands:
run (r),
cont (c), 继续执行
next (n), n - step next
step (s), s - step in
out (o), o - step out
backtrace (bt) , 显示当前执行框架的回溯
setBreakpoint (sb),
setBreakpoint() or sb() 在当前行设置断点
setBreakpoint(1) or sb(1) 在指定行设置断点
setBreakpoint(‘fn()’) or sb(…) 在函数第一句设置断点
setBreakpoint (‘script.js’,1) or sb(..) 在 script.js 的第一行设置断点
clearBreakpoint (cb), 清除断点
watch, watch(“my_expressin”) 开始监视一个表达式
unwatch, watch(“my_expressin”) 移除一个监视器
watchers, 显示活动监视器
repl, 在所调试的脚本的上下文中打开调试器的 repl 执行代码
restart, 重新运行脚本
kill, 终止脚本
list, list(5) 显示脚本源代码的5行上下文 前五后五
scripts, 列出所有已加载的脚本
breakOnException,
breakpoints,
version, 显示v8版本
pause, 暂停执行代码(类似开发者工具中的暂停按钮)
高级使用
V8 调试器可以从两种方式启用和访问:以 –debug 命令行标志启动 Node;或者向已存在的 Node 进程发送 SIGUSR1 信号
一旦一个进程进入了调试模式,它便可被 Node 调试器连接。调试器可以通过 pid 或 URI 来连接,语法是
node debug -p - 通过 pid 连接进程
node debug - 通过类似 localhost:5858 的 URI 连接进程

第二种:各大工具类
如eclipse,visualstudio都有辅助工具插件类。相关的资料请自行网上查找

第三种:基于chrome的调试器
强烈推荐
需要安装 node-inspector

1
npm install -g node-inspector

node-inspector是通过websocket方式来转向debug输入输出的。
因此,我们在调试前要先启动node-inspector来监听Nodejs的debug调试端口
默认情况下node-inspector的端口是8080,可以通过参数–web-port=[port]来设置端口。
在启动node-inpspector之后,我们可以通过–debug–debug-brk来启动nodejs程序。
通过在浏览器输入http://[ip address]:8080/debug?port=5858
步骤:

  1. -> 打开目录 输入cmd 进入控制台dos
    输入
    1
    node --debug-brk=56666 example.js
    表示监听 通过56666端口监听 example.js
    2 -> 同1操作一样
    命令换成
    1
    node-inspector //默认情况为5858端口
    采用新的端口监听 对应56666端口
    用这个命令
    1
    node-inspector -web-port 56666

    Gruntfile Debug

在gruntfile.js所在目录打开一个控制台窗口

1
node-inspector

再打开一个控制台窗口

1
node-debug grunt ftp:JHZT

ftp:JHZT是grunt 的一个task任务

在chrome输入
http://127.0.0.1:8080/?port=5858 会进入调试模式
需要注意的:为了便于调试,最好在Gruntfile.js文件中需要调试地方加入 debugger; 关键字


文章作者: HKmaster
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 HKmaster !
评论
  目录