Catch an unhandled exception. the application will exit.exception:System.MissingMethodException: Method not found: 'System.Reflection.Emit.AssemblyBuilder System.AppDomain.DefineDy namicAssembly(System.Reflection.AssemblyName, System.Reflection.Emit.AssemblyBuilderAccess)'. at XLua.CodeEmit.get_CodeEmitModule() at XLua.CodeEmit.EmitDelegateImpl(IEnumerable`1 groups) in C:\HaRu\work\xLua-master\Assets\XLua\Src\CodeEmit.cs:line 223 at XLua.ObjectTranslator.initCSharpCallLua() in C:\HaRu\work\xLua-master\Assets\XLua\Src\ObjectTranslator.cs:line 329 at XLua.ObjectTranslator..ctor(LuaEnv luaenv, IntPtr L) in C:\HaRu\work\xLua-master\Assets\XLua\Src\ObjectTranslator.cs:line 258 at XLua.LuaEnv..ctor() in C:\HaRu\work\xLua-master\Assets\XLua\Src\LuaEnv.cs:line 88 at XLuaEngine..ctor(Int32 id) in C:\HaRu\work\Dev_dlc\NewServer\Libs\XLua\XLuaEngine.cs:line 40 at Haru.DlcServer.Application.Run() in C:\HaRu\work\Dev_dlc\NewServer\Server\DlcServer\Application.cs:line 91 at Haru.DlcServer.Program.Main(String[] args) in C:\HaRu\work\Dev_dlc\NewServer\Server\DlcServer\Program.cs:line 15如何解决
时间: 2023-08-27 11:17:53 浏览: 195
这个问题通常是由于缺少对 System.Reflection.Emit.AssemblyBuilder 类的支持或者版本不兼容导致的,这个类是 .NET Framework 中的一个核心类型,需要 .NET Framework 的支持才能正常运行。
尝试以下解决方案:
1. 确保你的 .NET Framework 版本是 4.5 或者更高版本,否则需要升级 .NET Framework。
2. 如果是在 Unity 中使用 XLua,确保你的 Unity 版本是 2017 或者更高版本,并且使用了 .NET 4.x 的脚本运行时。在 Unity 项目设置中,可以找到“Player Settings”选项,然后在“Other Settings”中将“Scripting Runtime Version”设置为“.NET 4.x Equivalent”。
3. 如果以上方法无法解决问题,可以尝试手动添加缺少的程序集。可以通过在项目中添加对 System.Reflection.Emit.dll 的引用来解决这个问题。在 Visual Studio 中,可以右键单击项目,然后选择“添加引用”选项,并在“程序集”选项卡中找到并添加 System.Reflection.Emit.dll。注意,这种方法需要一定的编程经验和技能,需要谨慎操作。
如果你仍然无法解决这个问题,可以尝试联系 XLua 的开发者或者在 XLua 的 GitHub 仓库中提出问题。
相关问题
Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object.
Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object. 这个错误通常发生在访问一个未初始化的对象时。在你的代码中,t是一个Test24类的对象,但是你没有对它进行初始化,所以它的值为null。因此,在调用t.MyFun()时,就会出现NullReferenceException异常。为了解决这个问题,你需要在使用t之前对其进行初始化,例如使用new关键字创建一个Test24类的实例。
Unhandled exception. System.IndexOutOfRangeException: Index was outside the bounds of the array.
这个异常通常表示你正在访问一个数组或集合的索引,但是这个索引超出了其有效范围。这可能是因为你尝试访问一个不存在的索引或者你没有正确地计算索引的值。
要解决这个问题,你需要检查你的代码,找出导致这个异常的原因。首先,检查数组或集合的大小和你正在访问的索引是否匹配。如果你正在使用循环来访问数组或集合,请确保你的循环计数器的值不会超出数组或集合的大小。如果你仍然无法解决问题,请检查你的代码逻辑和计算,确保你没有在计算索引值时出现任何错误。
阅读全文