在mac电脑,用vs2022 for mac打开ET6最新版,编译报错
The type or namespace name ‘ModuleBuilder’ could not be found
在ET群里问了,有人回复,但是试了不行。
标题:
我遇到了一个问题: 【问题描述】
我想要实现【X功能】:
但出现【Y现象】:
我经过了以下尝试【思路细节与代码实现】:
但不能解决,报错如下【报错信息/截图】:
我使用【关键词】:
谷歌/百度/必应但找不到答案。请问我该怎么解决?【截图相关代码片段】:
在ET群里问了,有人回复,但是试了不行
先用unity打开,然后在Editor-Preference里配置External Tool为VS
再不行就用rider
半世殇 已经是这样操作的,但是还是报那个错的
是的,不要用mac的vs
egametang 应该是ILRuntime的问题,我尝试过用vs2022 for mac编译ILRuntime也是报错
egametang 用windows的vs打ios包一样报错
mac上用rider
egametang
一样的
你们发布前有测试过iOS打包吗?
缺少 System.Reflection。 发出 意味着任何依赖于运行时代码生成的代码都不起作用。 这包括:
动态语言运行时。
基于动态语言运行时构建的任何语言。
远程处理的 TransparentProxy 或其他会导致运行时动态生成代码的任何内容。
重要
不要将 Reflection.Emit 与反射混淆。 Reflection.Emit 是动态生成代码,并编译代码并编译为本机代码。 由于 iOS 上的限制, (JIT 编译) 不支持此功能。
但整个反射 API(包括 Type.GetType ( someClass") 、列出方法、列出属性、提取属性和值都正常工作。
参考
https://docs.microsoft.com/zh-cn/xamarin/ios/internals/limitations#System.Reflection.Emit
System.Reflection.Emit
jump08 去群里找人帮你看看吧,不用200,50就有人远程帮你了
egametang 好吧明天试试。 我的mac是M1芯片的
jump08 将Player Setting 中的 API Compatibility Level的值改为.Net 4.x
找到解决方法了
要将Player Setting 中的 API Compatibility Level的值改为.Net 4.x