更新NuGet包以支持Xamarin Unified

3
我正在尝试将我的pcl正确构建为nuget包。我已经更新到Xamarin beta并将nuget更新到2.8.5版本,但是在创建我的包时出现以下错误:
问题:无效的框架文件夹。 描述:'lib'下的'Xamarin.iOS10'文件夹不被识别为有效的框架名称或受支持的区域标识符。 解决方案:将其重命名为有效的框架名称。
如果我只使用MonoTouch,则不会出现错误,但是nuget包未能正确安装。
1个回答

5
我怀疑您没有使用最新版本的NuGet。产品版本需要为2.8.3或更高版本。程序集版本将为2.8.5.x,这可能有点令人困惑。
如果您正在使用NuGet.exe,则运行以下命令以检查产品版本:
NuGet.exe update -self

你应该能看到输出结果:
Checking for updates from https://www.nuget.org/api/v2/.
Currently running NuGet.exe 2.8.3.
NuGet.exe is up to date.

然后运行:

NuGet.exe pack YourNuSpec.nuspec

需要注意的是,无效框架消息只是一个警告。即使您使用不认识Xamarin.iOS框架的旧版本NuGet.exe,NuGet软件包仍将创建正确的lib目录。


嗨,马特,感谢您的反馈。我刚按照您建议的命令运行了一下,nuget已经成功更新了。我还尝试了打包,本地运行得非常顺利。但是在我们的构建服务器上构建完全相同的内容时,我仍然遇到了问题。不过您说得对,软件包仍然被推送,所以我有测试它的可能性。 - Bjarke
该死的svn。嗨,马特,你是正确的。我犯了一个错误,没有将更新版本的nuget.exe提交到svn。我会接受你的答案并用棍子打自己。 - Bjarke
运行得像魔法一样。有人能解释为什么和如何Nuget版本影响Mono.Touch构建吗? - Eugen Timm

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接