QJSPanda 调试器使用说明
QJSPanda 是一款为 PixUI 定制的 quickjs 调试器,目前仅用于 PixUI 创建的 js 虚拟机。
使用方法
参阅文档 : https://git.woa.com/stuartwang/QJSPanda.git
模式介绍
-
launch
运行调试器前端时拉起pixui实例,二者连接进行调试。注意调整 launch.json 中的 "runtimeExecutable" 配置,保证 pixui.exe 可以被找到。
-
attach
比较常用的模式,用户自行运行pixui的进程作为调试后端(可以是unity、ue、pixui.exe等),VScode 前端启动调试后 attach 到后端进行调试。
历史记录
1.9.2
- 修复 puerts c# 原生 object proto 报错
- 增加中转服务器断开时,调试后端继续运行,避免卡死的问题
- 修复中转服务器使用 exec 导致缓存溢出的问题
1.9.0
- 适配 pxIDE, 中转服务器支持控制端,支持页面刷新
- 支持同步连接 startSync
- 修复路径问题导致的动态加载文件断点无法点亮
- 增加调试器版本获取
- 增加webpack压缩,减小生成的代码量
1.8.0
- 支持同步初始化接口 startSync
- 支持展示 Class 对象原型
- 增加对 pxide 的支持
- 修复 import 文件路径中含有 .. 时,被引用文件中的断点无法确认的 bug
1.7.1
- 优化异步 stepOut 行为
1.7.0
- 支持微任务(promise)展示异步堆栈
- 因目前未支持宏任务的异步堆栈展示,所以如果堆栈中含有宏任务(setTimeout,setInvrval, setImmediate)时,异步堆栈会展示到宏任务为止
- 修复 import 动态加载的代码调试
- 修复调用栈中含有 native 时栈帧变量展示错误的问题
- 支持 puerts 小应用跨活动调试(同一 ctx 下多次 eval 的代码一次设置统一调试)
- 使用脚本预加载机制,修复调试器启动后可能无法立刻 stopOnBreakpoint 的问题
1.6.0
- 支持 puerts 活动调试进入 frame 源码
- 支持 sgame tsScript 工程
- 支持 ts - js 切换
- 优化了前后端连接
- 修复了 while 循环的行号错误问题
1.5.1
- 修复展开 closure 变量时出现 js err 的问题
1.5.0
- 支持使用
QJSPanda.setUseHookStateOptimize(true)
开启Hook效率优化 - 优化连接状态
1.4.0
- 修复 vscode 1.8.0 + 版本中,断开连接按钮需要反复点击才能生效的问题
- 修复断点时 vscode 关闭造成后端停止在 pause 状态,导致后端卡死的问题