You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

添加Firebase项目后Xamarin iOS构建失败(UnpackFrameworks任务失败)

Xamarin.iOS添加Firebase组件后HotRestart构建失败问题解决

问题说明

添加Xamarin.Firebase.Messaging(或其他Firebase组件)后,iOS端构建失败,卸载Firebase组件后项目可正常构建。推测是HotRestart解压框架文件时,无法覆盖已存在文件导致的错误。

环境信息

  • Visual Studio 2022 Community
  • 部署目标:iPhoneX真机

已尝试的无效操作

  • 删除obj/bin目录、清理解决方案后重新构建
  • 重启电脑
  • 修改注册表启用Windows长路径支持

错误信息

2> C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: The "UnpackFrameworks" task failed unexpectedly.
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: System.IO.IOException: The file 'obj\iPhone\Debug\Frameworks\FirebaseFirestore.framework\FirebaseFirestore' already exists.
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at System.IO.File.InternalCopy(String sourceFileName, String destFileName, Boolean overwrite, Boolean checkHost)
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at System.IO.FileInfo.CopyTo(String destFileName)
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at Xamarin.iOS.Tasks.Windows.Zip.CopyDirectory(String source, String destination) in /Users/builder/azdo/_work/1/s/xamarin-macios/msbuild/Xamarin.iOS.Tasks.Windows/Zip.cs:line 32
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at Xamarin.iOS.Tasks.Windows.Zip.Extract(String sourceFileName, String destinationPath) in /Users/builder/azdo/_work/1/s/xamarin-macios/msbuild/Xamarin.iOS.Tasks.Windows/Zip.cs:line 18
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at Xamarin.iOS.HotRestart.Tasks.UnpackFrameworks.Execute() in /Users/builder/azdo/_work/1/s/xamarin-macios/msbuild/Xamarin.iOS.Tasks.Windows/Tasks/UnpackHotRestartFrameworks.cs:line 55
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
2>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Xamarin\iOS\Xamarin.iOS.HotRestart.targets(75,3): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext()

解决方案建议

  • 清除HotRestart缓存:找到路径C:\Users\[你的用户名]\AppData\Local\Xamarin\HotRestart,删除该目录下所有内容,重新构建项目。
  • 强制覆盖解压文件:编辑项目的.csproj文件,添加如下配置:
    <PropertyGroup>
      <HotRestartUnpackOverwrite>true</HotRestartUnpackOverwrite>
    </PropertyGroup>
    
  • 禁用HotRestart改用Mac构建:打开Visual Studio 工具 > 选项 > Xamarin > iOS设置,勾选使用Mac进行iOS开发,配置Mac主机连接后重新构建。
  • 更新相关包:将Xamarin.iOS及所有Firebase相关NuGet包更新至最新稳定版本,修复旧版本兼容性问题。

内容的提问来源于stack exchange,提问作者RS868553

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 14:14:35