2

昨天我按照这个答案中建议的步骤在我的 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 

这个错误是什么意思,我该如何解决?谢谢。

4

1 回答 1

3

我的一台开发机器设置为双启动 Windows 7 和 Ubuntu 12.04,由于我只在 Ubuntu 上安装了 Monodevelop 2.8,我想我会按照您引用的答案(来自 askubuntu)中的步骤进行操作。

当我运行该sudo apt-add-repository ppa:directhex/ppa命令时,我收到一条大警告消息,说 PPA 始终包含最新的、可能不稳定的 Monodevelop 源,并建议改用badgerports.org的 PPA 。Badgerports 只使用稳定的、经过测试的源——在撰写本文时,它有 Monodevelop 版本3.0.3.2+dfsg-1~dhx1~precise1

所以,我点击Ctrl+C取消apt-add-repository命令,而是按照这些说明设置 Badgerports PPA。之后,我运行命令来更新本地包数据库并安装 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 中的一个错误,但也可能是触发它的 Monodevelop 中的一个错误。

于 2012-08-29T15:21:04.213 回答