学习NodeJS第三天:打造Nodejs的调试环境(上)

来源:互联网 发布:诺基亚x2软件下载 编辑:程序博客网 时间:2024/06/13 00:00

自从 NodeJS 问世以来,我们注意到的一个现象是,开源生态围绕 NodeJS 的扩展(Extends)、插件(Plugins)或工具(Tools/Utilis)在不断地增多,可见当中之蓬勃。这一方面固然很好,但这里却不是重点讨论那些扩展或者插件,而是调试工具(debugger)本身。因为,没有一个调试工具,无法展开一丁点的开发工作,或者说困难重重。大家心知肚明,调试器自必然不可或缺。官方 nodejs.org 对调试器的态度也是不含糊的。原来,官方一早在 nodejs 内置了基于Eclipse debugger plugin for V8 调试器的接口,为调试提供安排一套解决方案;另外还有一文编写针对“调试”的教程——本文恰恰是得益于出自于出自作者 Ryan Dahl 之手的这份教程提炼而来。

话说 Eclipse 是一个大平台,开源的,任何有构思的东东都可以自由地在 Eclipse 平台上施展,——好不快活,呵呵!先急不及待地看看这个调试器的界面,大概是这样的,

图一

图乃经典的 Eclipse 的风格的界面~但 Eclipse,与 nodejs 的调试,本不互为一体——待从何说起呢?Nodejs 即就是 Google V8 的高层扩展,调试过程中还是必须经过 V8 来打交道。Google V8 引擎本是一个地道的 JavaScript 解释引擎,不包含调试模块在内,也就是说需要借助另外的调试模组参与之。所以 V8/nodejs 暴露开放了相关的调试接口出来,通过这些接口整合到专门的调试模块中去,像 Eclipse Debug View,如此就可以呈现一个专业的调试环境。

本文所介绍的调试器是 Google Chrome Developer Tools,定位在面向 Chrome 开发者的工具包,而此刻我们就是借助它这个工具来调试 nodejs 的。Google Chrome Developer Tools 在原理上是基于 TCP 远程的调试环境的这么一个 Eclipse 插件。作者 Ryan Dahl 有考虑到,直接在 V8  C++ / Eclipse Java 的最终环境中加入调试器而非远程调试的,——但是为什么不这样做?原因是什么?作者的说法是为了避免插件在 C++/Java 两者运行时带来的不稳定性。

好,休费多唇舌,咱们从基础部分进入调试 nodejs 的介绍。首先是安装 Google Chrome Developer Tools。假设用户已经了解Eclipse的基本使用(熟悉怎么安装 Eclipse 插件的用户则可以跳过此步……),进入菜单选择【Help】--【Software Updates...】,如下图。

出现对话框后切换至【Available Software】标签页,如下图。

然后点击右方的【Add Site……】按钮,有否出现一个输入 url 网址的对话框?这是 Google Chrome Developer Tools的下载地址了,我们贴上:

http://chromedevtools.googlecode.com/svn/update/dev/

然后确认 OK,稍等待片刻,如果出现 http://chromedevtools.googlecode.com/svn/update/dev/ 的树菜单,在其前面打勾选择下载。接着点击右边的【install……】。

稍等片刻计算依赖关系……

在【Review Licenses】的窗体中确认许可,然后点击【Next】,正式开始安装:

安装进度100%之后重启 Eclipse IDE 好让插件生效。然后在菜单【Windows】--【Show View】--选择【Debug】切换到 Eclipse 的调试视图,即图一的界面(还没链接Nodejs),如下图。到这一步,调试插件被安装完成,接着是设置调试器的部分。

如上图红色区域,点击【Debug】的图标旁边的倒三角,出现下拉菜单点击【Debug Configurations …】。然后从左边的选择项之中点击【Standalone V8 VM(独立 V8 虚拟机)】接着右键鼠标,选择【New】新建一个调试profile。

如下图,输入名称【name】和端口【Port】。可以设置端口为 Node-5858、Node-5859、Node-5860……等等,但必须与 nodejs 脚本中所指定的端口一致。

最后点击【Debug】按钮旋即计入调试界面(如图一)。至此,我们安装调试插件和设置端口部分已经完成了。打算了解如何在 JavaScript 源代码中进一步的调试吗?例如打点、步进、监视等的调试基本操作内容……在下一篇中将为大家作介绍!

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 还不起钱借不到怎么办 闯红灯收到短信不去扣分怎么办 被一家公司骗了怎么办 oppo手机无线网信号差怎么办 oppo手机无线网网速慢怎么办 电脑无法解析dns地址怎么办 vivox9手机卡顿反应慢怎么办 vivo手机设置成英文怎么办 wi-fi模块坏了怎么办 苹果手机dns被劫持怎么办 圆通快递一直不派送怎么办 凯越没有高压火怎么办 理财回执单丢了怎么办 余额宝超10万怎么办 商场主题经营改变商户怎么办 一个好的项目需要资金怎么办 没有做暂估入库的凭证怎么办 电脑显示宽带连接已断开怎么办 电脑ip地址连不上网怎么办 百度网盘资源打不开怎么办 百度网盘视频格式不支持怎么办 origin注册邮箱填错了怎么办 58同城手机输入不合法怎么办 银行卡密码输入错误三次怎么办 私密相册系统升级后打不开怎么办 由于志愿没填好孩子没书读怎么办 文具店不开了货怎么办 华为手机通讯录联系人重复怎么办 vcf文件用表格打开乱码怎么办 表格打出来太小怎么办 企业列入经营异常名录怎么办 小米电视滚动字幕模糊怎么办 海信电视浑的看不清怎么办 电视打开特别暗看不清怎么办 诈骗电话按了键怎么办 上海油电混合送沪牌以后怎么办? 车子被前夫砸了怎么办 老的标书丢了怎么办 拍牌照的标书掉了怎么办 上海拍到车牌后怎么办 杭州4s店车牌怎么办