昨天我按照this answer中建议的步骤在我的Linux Mint 13设置上安装了MonoDevelop 3.0。但是,当我尝试创建任何提供的类型的新解决方案时,我收到以下错误:
An error has occurred.
A type load exception has occurred.
System.TypeLoadException: A type load exception has occurred.
at (wrapper managed-to-native) System.Reflection.MonoCMethod:InternalInvoke (System.Reflection.MonoCMethod,object,object[],System.Exception&)
at System.Reflection.MonoCMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
此错误意味着什么,我该如何解决?感谢。
答案 0 :(得分:3)
我的一台开发机器设置为双启动Windows 7和Ubuntu 12.04,因为我只在Ubuntu上安装了Monodevelop 2.8,我想我会按照你引用的答案(来自askubuntu)的步骤进行操作。 / p>
当我运行sudo apt-add-repository ppa:directhex/ppa
命令时,我收到一条很大的警告消息,说PPA总是包含Monodevelop的最新的可能不稳定的源,并建议使用来自{{的PPA。 3}}而不是。 Badgerports只使用稳定的,经过测试的资源 - 在撰写本文时,它具有Monodevelop版本3.0.3.2+dfsg-1~dhx1~precise1
。
因此,我点击Ctrl+C
取消apt-add-repository
命令,然后点击这些badgerports.org。之后,我运行命令来更新本地包数据库并安装Monodevelop:
sudo apt-get update
sudo apt-get install monodevelop
一旦安装了monodevelop,我就可以启动它并创建/构建/调试一个新的C#示例项目而不会出现问题。
要安装F#加载项,我在其中一个顶级菜单(我认为是“工具”)下找到了一个“加载项”选项,展开了树的“语言绑定”节点,选择了F#语言绑定并单击“安装”。那时,我能够毫无问题地创建/构建/调试新的F#项目。
警告:我从Windows / VS2010复制了现有的F#项目,然后尝试构建/调试它。我得到了一个类似于你的错误,然后Monodevelop严重崩溃(我不得不kill
这个过程。
如果从Badgerports安装后无法让Monodevelop正常工作,你应该联系Mono和Monodevelop开发人员让他们调查这个 - 这个异常消息让我相信它可能是Mono中的一个bug,但是那里也可能是Monodevelop中的一个错误,它正在触发它。