Xamarin.Forms 1.4.3-pre2编译错误

Xamarin.Forms 1.4.3-pre2 compilation error

我已将 Xamarin.Forms 升级到 1.4.3-pre2 版本。 我没有更改代码中的任何内容,但出现此编译错误:

目标 XamlC: :错误:初始化任务 XamlCTask 时出错:未注册任务 XamlCTask。

有什么想法吗?

尝试关闭解决方案,删除您的 \packages\bin\obj 文件夹。然后重新打开解决方案并等待包恢复(或在解决方案级别手动恢复它们),然后重建您的解决方案。

一些包(包括 XF)带有构建脚本,例如 Xamarin.Forms.targets 并且旧库可能会干扰或者更新时可能无法识别新库。我发现手动清理可以解决它们。

我试过第一个答案 - 它没有解决我的问题。
我必须:
- 在 VS
中关闭解决方案 - 打开文件:
- AppName.Android.csproj
- AppName.iOS.csproj
- AppName.Winphone.csproj
在带有编辑器的解决方案的子文件夹中。
然后我不得不删除(只是删除)两个对 .forms 的旧引用:

  <Import Project="..\..\packages\Xamarin.Forms.1.2.3.6257\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10\Xamarin.Forms.targets"  

 Condition="Exists('..\..\packages\Xamarin.Forms.1.2.3.6257\build\portable-win+net45+wp80+MonoAndroid10+MonoTouch10\Xamarin.Forms.targets')" />

看起来,删除导入已经完成了工作...

注意:还有对存储在 .csproj 文件中的 版本的引用。

然后在VS中重新打开解决方案,清理并重建。

通过这些手动更改,我现在可以为所有平台进一步构建。

这里有一些要遵循的提示:

  • 将Xamarin.forms更新到您解决方案的最新版本
  • 删除Xamarin.forms nugget 包并重新安装
  • 检查您项目的包仓库中是否只有一个xamarin.Forms包(只有一个版本)。如果您发现两个或更多,请删除它们并仅保留与安装到您的项目的 nuget pakcages 关联的最后一个版本。
  • 从项目存储库中删除“packages”并重建项目
  • here 获取 xamarin 示例项目并尝试构建它。如果您没有出错,请尝试找出您的项目与工作项目之间的差异。
  • 检查项目路径中是否有特殊字符(#、{、[、+、...)