我正在尝试使用 NLua
在 lua 文件中创建 C# 类的实例
这是我的代码。
class Program
{
public static void Main (string[] args)
{
Lua lua = new Lua();
lua.LoadCLRPackage();
lua.DoString(@"
import ('LuaTest.exe', 'LuaTest')
test = Test()
");
}
}
public class Test
{
public Test()
{
Console.WriteLine("IT WORKED");
}
}
但这似乎不起作用,我环顾四周并尝试了多种不同的方法。我尝试过的大多数方法的错误是:
An unhandled exception of type 'NLua.Exceptions.LuaScriptException' occurred in NLua.dll Additional information: [string "chunk"]:3: attempt to call global 'Test' (a nil value)
这有点奇怪,因为这直接来自他们的示例代码? https://github.com/NLua/NLua
谢谢大家的帮助。
咆哮的一点:
如果我做错了什么,请告诉我。 顺便说一句,我正在使用纯 C# 构建,不确定这是否有什么不同,我没有看到任何关于它的警告?但整个事情似乎没有记录在案......
如果有人对更好的纯 C# Lua 库有任何建议,我会洗耳恭听。
最佳答案
对此我感到很抱歉。自述文件错误。
只需删除“.exe”即可正常工作
class Program
{
public static void Main (string[] args)
{
Lua lua = new Lua();
lua.LoadCLRPackage();
lua.DoString(@"
import ('LuaTest', 'LuaTest')
test = Test()
");
}
}
public class Test
{
public Test()
{
Console.WriteLine("IT WORKED");
}
}
我已经修复了 github.com/nlua/nlua 中的自述文件
关于c# - 使用 NLua 的 C# 类实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29873182/