• 技术文章 >开发工具 >VSCode

    vscode lua断点失败怎么办

    藏色散人藏色散人2019-12-24 09:10:50原创1446

    vscode lua断点失败怎么办?

    使用VSCode断点调试Lua教程

    一.安装Visual Studio Code(vscode)和插件中心搜索安装luaide

    9242cb00064b8f8e7bf6bd45c4fa156.png

    二.配置luach.json

    1.工程文件夹直接拖入vscode即可

    2.左侧栏调试图标->设置->选择LuaDebug,这时会出现launch.json文件

    d9e7f4088cb3a091b3ac7014d4b286a.png

    3.在launch.json文件中找到exePath字段修改到模拟器路径

    例如:"exePath": "D:/xxx/player-3.x/player3.exe",

    其他地方配置默认就可以。

    三.lua断点调试配置

    1.下载LuaDebug.lua这个文件

    地址: https://github.com/k0204/LuaIde

    cad0eeb678a07cf452a736ee7daf3e9.png

    2.把LuaDebug.lua文件放在工程src目录下

    2adea05309f2ed3a26c64cd6f17d32f.png

    3..调试代码添加

    在main.lua文件中添加以下代码:

            local breakInfoFun,xpcallFun = require("LuaDebug")("localhost", 7003)
               
                --3.x
                --1.断点定时器添加
                cc.Director:getInstance():getScheduler():scheduleScriptFunc(breakInfoFun, 0.3, false)
                --2.程序异常监听
                function G__TRACKBACK(errorMessage)
                debugXpCall();
                print("----------------------------------------")
                local msg = debug.traceback(errorMessage, 3)
                print(msg)
                print("----------------------------------------")
                end
                local status, msg = xpcall(main, G__TRACKBACK)
                --如果是2.x
                CCDirector:sharedDirector():getScheduler():scheduleScriptFunc(breakInfoFun, 0.3, false)
                function G__TRACKBACK(errorMessage)
                debugXpCall();
                print("----------------------------------------")
                local msg = debug.traceback(errorMessage, 3)
                print(msg)
                print("----------------------------------------")
                end
                local status, msg = xpcall(main, G__TRACKBACK)

    e34360903ed509899dd813395025912.png

    四.调试:

    1.按F5启动调试

    调试一旦启动,编辑器顶部就会显示出调试命令栏

    b368b48722be625fdac8e167148b061.png

    继续 / 暂停 F5

    跳过 F10

    进入 F11

    退出 Shift+F11

    重新开始 unassigned

    停止调试 Shift+F5

    2.单击VS Code左侧视图栏的调试图标即可打开调试视图。

    8e4fe7b1694fcc7ee22d631b019a300.png

    3.一些调试小技巧

    1变量区域不单能直观看到值,也可以直接编辑变量值调试,或者通过鼠标悬停在编辑器中的源码上编辑。

    2想要一直跟踪某个变量,可以编辑那个变量到监视里。

    3利用调用堆栈,可以知道当出错函数被谁调用的时候出错。这样一层层的看上去,有时可以猜测出错误的原因。

    4在源代码不可得但是函数名称已经知晓的情况下,可以通过按断点区域头部的+来创建断点函数。

    d84362710fa10b489baf68d606d3d38.png

    五.编辑用户代码片段(Snippets)

    菜单栏->文件->首选项->用户代码片段->lua

    ba0efaeb4a69d1e8e3b9fdb88454eef.png

    参数解释:

    prefix :这个参数是使用代码段的快捷入口,比如这里的log在使用时输入log会有智能感知.

    body :这个是代码段的主体.需要设置的代码放在这里,字符串间换行的话使用\r\n换行符隔开.注意如果值里包含特殊字符需要进行转义.

            多行语句的以,隔开。

    $1 :这个为光标的所在位置.

    $2 :使用这个参数后会光标的下一位置将会另起一行,按tab键可进行快速切换,还可以有$3,$4,$5.....

    description :代码段描述,在使用智能感知时的描述

    以上就是vscode lua断点失败怎么办的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:vscode
    上一篇:vscode中的工作区是什么? 下一篇:vscode如何测试html
    线上培训班

    相关文章推荐

    • vscode配置文件在哪打开?• vscode如何修改字体?• VScode怎么安装python模块?• vscode中的工作区是什么?

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网