【问题标题】:Could not load assembly 'Newtonsoft.Json' when running XamarinStore.Droid运行 XamarinStore.Droid 时无法加载程序集“Newtonsoft.Json”
【发布时间】:2014-12-10 02:11:53
【问题描述】:

我正在尝试运行适用于 Android 的 Xamarin Studio 示例应用 XamarinStore。

但是,当我尝试运行应用程序时,我收到以下构建错误消息:

C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(675,2): monodroid error XA0000: Unexpected error - Please file a bug report at http://bugzilla.xamarin.com. 
Reason: System.IO.FileNotFoundException: Could not load assembly 'Newtonsoft.Json, Version=, Culture=neutral, PublicKeyToken=null'. 
Perhaps it doesn't exist in the Mono for Android profile?

我的组件文件夹中已经有 Json.NET 框架。 而且我的 References 文件夹中也有 Newtonsoft.Json 参考。

我的安装/配置可能有什么问题?

【问题讨论】:

  • 尝试从组件存储中删除和添加 Json 组件。清理解决方案 -> 构建它 -> 关闭工作室并重新打开它。
  • @Alex.F 我已经做到了,同样的事情仍然发生。如果我删除该组件,它会抱怨找不到 Json 命名空间,正如预期的那样。
  • 组件是什么版本?
  • @Alex.F 这是 Json.NET 4.5.11.1 和 NewtonSoft.Json 4.5.0.0

标签: android xamarin json.net xamarin.android xamarin-studio


【解决方案1】:

组件会自动为您下载。它们应该在 components/android/lib 文件夹中。您可以手动添加它。此外,如果组件不起作用,请尝试添加 Json.NET nuget 包。

【讨论】:

  • 当我尝试添加 JSON.Net 包时,我收到以下消息“正在添加 Newtonsoft.Json... 将 'Newtonsoft.Json 6.0.6' 添加到 XamarinStore.Droid。无法安装包' Newtonsoft.Json 6.0.6'。您正在尝试将此包安装到以“MonoAndroid,Version=v5.0”为目标的项目中,但该包不包含任何与该框架兼容的程序集引用或内容文件。对于更多信息,请联系包作者。”
  • 你知道我们应该从哪个代表分支加载 Xamarin Studio 中的项目吗?
【解决方案2】:

原来我的 Newtonsoft.JSon 参考文件夹没有找到,我的 SDK 文件夹也没有,因为 Windows 用户名带有特殊字符 (João)。

我将我的 Android SDK 复制到一个没有特殊字符的文件夹中,并在工具 -> 选项中更改了 SDK 位置,我设法让它工作。

此问题已在https://bugzilla.xamarin.com/show_bug.cgi?id=27074 中报告,但尚未解决。

【讨论】:

    猜你喜欢
    • 2014-04-08
    • 1970-01-01
    • 2011-09-09
    • 2017-12-31
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 2015-12-23
    相关资源
    最近更新 更多