忽略 EmmyLua 调试代码
文章目录
问题
在使用 EmmyLua 配合 Unity 进行调试时,需要先将调试启动代码添加到 Lua 初始化代码中。
由于初始化代码必须使用 EmmyLua 插件中 DLL 的 emmy_core
才能进行调试,而每个人的 EmmyLua 安装位置不同,导致调试启动代码也各不相同。
而调试时又必须添加 EmmyLua 调试启动代码,在提交代码时经常会忘记而误提交,导致他人更新后无法启动游戏。
解决思路
- 调试代码本身应该独立到单独的文件中,与其他代码分离。
- 有没有调试代码都不影响游戏正常运行。
- 调试代码每个人都不一样,因此不能提交到仓库中。
- 调试代码不在编辑器下时不应该加载。
解决方法
模板文件
首先应该建立一个模板文件,里面加入 EmmyLua 调试代码。
Assets/Lua/EmmyLuaDebugger.lua.example
将此文件与对应的 meta 文件提交到仓库。
调试文件
复制模板文件并将其改名为:
Assets/Lua/EmmyLuaDebugger.lua
将此文件与对应的 meta 文件加入到忽略列表中。SVN 是添加 svn:ignore
属性,Git 是添加到 .gitignore
文件中。
调试文件加载代码
使用 pcall 调用 require 加载调试文件,如果调试文件不存在则会有异常,然后输出一条错误消息。
|
|
总结
这些东西原理上都很简单,但是可以减少开发人员在提交时要考虑的一个文件改动,有利于提升效率。