NuGet安装FarseerPhysics.Portable包错误

时间:2014-12-07 20:40:46

标签: android xamarin nuget monogame

我正在使用Xamarin Android开发Android MonoGame应用。该项目设置如下: enter image description here

尝试使用NuGet安装Farseer Physics Portable时出现以下错误:

PM> Install-Package FarseerPhysics.Portable
'FarseerPhysics.Portable 3.5.1' already installed.
Adding 'FarseerPhysics.Portable 3.5.1' to MyGameAndroid.
Install-Package : Could not install package 'FarseerPhysics.Portable 3.5.1'. You are trying to install this package into a project that targets 
'MonoAndroid,Version=v2.3', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, 
contact the package author.
At line:1 char:1
+ Install-Package FarseerPhysics.Portable
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], InvalidOperationException
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

当我尝试安装BugSense.Xamarin.Android时也会发生这种情况。我怀疑错误消息是不正确的,因为我之前能够在另一个项目中安装相同的软件包,该项目具有与当前项目完全相同的设置。

1 个答案:

答案 0 :(得分:2)

FarseerPhysics.Portable与MonoAndroid项目兼容。我可以将它安装到MonoAndroid项目中。

FarseerPhysics.Portable只包含一个可移植的类库。所以如果你看到错误:

Could not install package 'FarseerPhysics.Portable 3.5.1'. You are trying to install this package into a project that targets 

'MonoAndroid,Version = v2.3',但该软件包不包含任何与该框架兼容的程序集引用或内容文件。欲获得更多信息, 联系包裹作者。

此错误通常由以下一项或两项引起:

  1. 未安装Xamarin Portable Class Library配置文件。
  2. 在Visual Studio中安装了旧版本的NuGet Package Manager,它无法将MonoAndroid识别为目标框架。
  3. 1)检查以下目录中是否有Xamarin.Android.xml文件:

    C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile78\SupportedFrameworks
    

    2)检查您是否可以从Visual Studio的Extension Manager获得任何NuGet更新,您可以通过选择Extensions and Updates从Tools菜单打开,然后选择Update选项卡。

    请注意,NuGet提供了两个FarseerPhysics Portable NuGet包。其中一个可以安装到任何项目中,而另一个则需要安装Xamarin Portable Class Library配置文件。