TA_ccj
TA_ccj
2021-01-25 11:05

Unity Xlua module 'x' not found

  • c#
  • lua
  • 开发语言

开发环境:
 unity 2019.4.5f1
 XLua v2.1.15
 

XLua 的导入正常

  这里说明  XLuaManager.luaEnv.DoString("print('Hello XLua');"); 这句代码是正常执行的

但是如果换成

public class XLuaTest : MonoBehaviour {
    private void Start() {
        XLuaManager.luaEnv.DoString("require 'Test'");
        int value = XLuaManager.luaEnv.Global.Get<int>("value");
        string MD5 = XLuaManager.luaEnv.Global.Get<string>("MD5");
        print(value + "|" + MD5 );
    }
}

Test.lua.txt 的编码格式为 UTF-8, 在 Resources 目录下

但是在执行的时候会出现

提示为 LuaException: [string "chunk"]:1: module 'Test' not found: no field package.preload['Test'] 找不到文件

然后我尝试直接通过 TestAssets 的方式导入 XLua 文件

public class XLuaTest : MonoBehaviour {
    public TextAsset xluaFile;

    private void Start() {
        //XLuaManager.luaEnv.DoString("require 'Test'");
        XLuaManager.luaEnv.DoString(xluaFile.text);
        int value = XLuaManager.luaEnv.Global.Get<int>("value");
        string MD5 = XLuaManager.luaEnv.Global.Get<string>("MD5");
        print(value + "|" + MD5 );
    }
}

运行然后就会出现报错

提示为  LuaException: [string "chunk"]:4: malformed number near '2fad877e2551eefe6ec6d531a5e35e1b'

而且还有一个比较灵异的问题就是, 在一开始的时候, XLua 是可以正常检索到 txt 文件并且执行的, 但是我多操作了几次之后, 就死活也不能再执行了, XLua 既然出来这么久了, 网上也没有在这上面有过详细的解答, 就说明是很少发生的, 那就说明是我的问题, 可是这个问题目前来看我好像是没有少做什么的, 而且之前的操作也是正确的, 成功的, 为什么忽然就不行了呢? 

初次使用XLua, 还请各位大佬指点~~~

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

0条回答