需求
使用 Hexo 的过程中发现了一些小问题,可能是插件导致的,一般程序出现异常,进入 debug 调试模式是比较稳妥的方案,于是就想 Hexo 是不是也能调试一下。Hexo 是基于 Node.js 的一个静态站点生成框架,所以调试代码自然也是没问题。
创建配置文件
在 Visual Studio Code 中 使用 VSCode 打开 Hexo 项目,点击左侧的 Debug
图标,再点击 Create a launch.json file
,
方法1:Node.js运行
修改文件内容如下:
1 | { |
参数说明:
request
- launch:启动独立的具有 debug 模式的程序
- attach :监听已经启动的程序
args
- g:执行
hexo g
生成静态文件的时候启动调试,也可以设置为deploy
等其它命令,当执行这些命令的时候就进入调试模式了。
方法2:NPM 运行
打开根目录下的
package.json
文件,添加这个选项:1
2
3
4
5
6"scripts": {
"build": "hexo generate",
"clean": "hexo clean",
"deploy": "hexo deploy",
"server": "hexo server"
}修改
launch.json
文件1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Debug Hexo via npm",
"cwd": "${workspaceFolder}",
"runtimeExecutable": "npm",
"runtimeArgs": [
"run", "build"
],
"console": "internalConsole",
"outputCapture": "std"
}
]
}参数说明
runtimeArgs:这里的
build
可以设置为第一步选项中的命令
方法3:node-cli
安装依赖模块
node-cli
1
npm install -save-dev node-cli
打开根目录下的
package.json
文件,添加这个选项:1
2
3
4
5
6
7"scripts": {
"build": "hexo generate",
"clean": "hexo clean",
"deploy": "hexo deploy",
"server": "hexo server",
"debug-generate": "node ./node_modules/hexo-cli/bin/hexo generate --debug"
}修改
launch.json
文件1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Debug Hexo via npm",
"cwd": "${workspaceFolder}",
"runtimeExecutable": "npm",
"runtimeArgs": [
"run", "debug-generate"
],
"console": "internalConsole",
"outputCapture": "std"
}
]
}
启动调试
- 不管使用以上哪种方法,修改配置文件后保存。
- 打开 node_modules 目录找到需要调试的插件添加断点
- 点击 Visual studio code 左侧的
Debug
图标,再点击“绿色三角调试按钮”(或 F5)即可进入调试模式。
说明
launch.json
文件中的 console
参数设置为:internalConsole
,调试信息显示在 VSCode 的 DEBUG CONSOLE 窗口,也可以设置为: integratedTerminal
,调试信息将会显示在 TERMINAL
终端窗口中。