【问题标题】:System.TypeLoadException with MonoDevelop带有 MonoDevelop 的 System.TypeLoadException
【发布时间】:2012-08-28 18:08:10
【问题描述】:

昨天我按照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 

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

【问题讨论】:

  • 这看起来像是 Mono 引擎内部的一些内部 P/Invoke 调用(即,对本机代码的托管调用)失败了——也许与 Linux Mint 存在一些兼容性问题。
  • @JackP.,谢谢。可能的解决方案?
  • 您是针对任何项目类型(例如 C#、F# 等)还是仅针对 F# 项目收到此错误?
  • @knocte,Mono JIT 编译器版本 2.10.8.1 (Debian 2.10.8.1-5~dhx1~precise1)

标签: c# f# mono monodevelop linux-mint


【解决方案1】:

我的一台开发机器设置为双启动 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 命令,而是遵循这些instructions to set up the 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 中的错误。

【讨论】:

  • 无法在此处设置 badgerports PPA。软件经理说 GPG 密钥可能已损坏或无效。
猜你喜欢
  • 2012-01-10
  • 1970-01-01
  • 2010-10-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多