unity 项目中接入XLua 开发,需要对XLua 进行调试。
JetBrainsRider + EmmyLua插件 + XLua
更新 2020年3月26日
最近EmmyLua插件又又又升级了,版本(1.3.2.142)。因此调试方式也发升了变化。
配置
1.Rider 安装 EmmyLua 插件
2.添加调试器
选择Tcp(Debugger connect IDE),也就是IDE作为server,unity作为client,通过socket进行连接,这种好处就是可以在lua启动的入口处既可以进行调试,缺点是,必须先启动调试器,后启动unity。
3.复制调试信息到项目lua启动入口。(我是在lua入口处require了 一个emmylua 的调试脚本)
---
--- Generated by EmmyLua(https://github.com/EmmyLua)
--- Created by jayden.
--- DateTime: 2020/3/26 13:47
---
-- 此处是插件自己的emmy_core.dll的具体位置。如果是团队协作开发的话,建议把路径改为unity的相对目录。
package.cpath = package.cpath .. ';C:/Users/jayden/.Rider2019.2/config/plugins/intellij-emmylua/classes/debugger/emmy/windows/x64/?.dll'
local dbg = require('emmy_core') -- 加载动态链接库
dbg.tcpConnect('localhost', 9966)
4.如果使用了xlua的自定义加载(customloader)功能,需要在 customloader的地方对于加载emmy_core的地方跳过,不然emmy_core 会加载失败。
调试
1.启动调试器
-
启动unity后就可以愉快的调试了
image.png
===================================================================================================================================================
更新2019年11月14日
最近升级了EmmyLua插件,发现已经少了6.b 中的lua attach unity。变成了Emmy Debugger。
在rider 的菜单栏,选择 run -> attach to process , 在当前的进程列表中,选择要调试的unity 进程,点击确定,就可以直接调试lua了。
======================================================================================================================================================
需要安装lua 环境 - >
选择适合自己的版本下载,直接进入该页面
http://joedf.ahkscript.org/LuaBuilds/
下载后解压,最好将解压后的文件夹复制到一个不会被删除的地方,而且路径最好不为中文。安装 JetBrainsRider
自己xx 一下怎么安装吧
xx一下-
安装EmmyLua插件
a.打开Setting界面
image
b.进入Plugins 搜索,并安装
image.png -
添加lua 文件类型
根据项目中使用的lua文件类型,添加为lua Language的文件类型,比如.lua.txt 和.lua
image.png -
设置lua scourceRoot。也就是lua 脚本的根目录
image.png -
设置调试配置
a.
image.png
b.image.png
c.image.png -
快乐的debug lua吧
a.
image.png
b.image.png
c.image.png
在lua脚本中设置断点就可以进行快乐的打断点了