• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

使用VSCode断点调试Lua教程

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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

二.配置luach.json

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

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

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

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

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

三.lua断点调试配置

    1.下载LuaDebug.lua这个文件

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

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

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)

四.调试:

1.按F5启动调试

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

继续 / 暂停 F5

跳过 F10

进入 F11

退出 Shift+F11

重新开始 unassigned

停止调试 Shift+F5

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

3.一些调试小技巧

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

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

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

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

 

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

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

参数解释:

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

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

        多行语句的以,隔开。

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

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

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



作者:fjxiao
链接:https://www.jianshu.com/p/61152eeee4cc
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
lua基础学习(六)发布时间:2022-07-22
下一篇:
lua中for循环发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap