Windows10构建Xamarin.iOS项目遇文件复制失败问题求助
在Windows 10电脑上构建Xamarin.iOS项目时遇到以下文件复制失败错误,已添加Apple开发者账号但问题仍未解决:
严重性 代码 描述 项目 文件 行 抑制状态
错误 无法将文件"C:\Users\waic.dev.nuget\packages\microsoft.intune.mam.xamarin.ios\16.0.3\build\xamarinios10....\lib\xamarinios10\res\MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALPublicClientApplication+SingleAccount.h"复制到"obj\iPhoneSimulator\Debug\Microsoft.Intune.MAM.iOS.resources/MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALPublicClientApplication+SingleAccount.h"。已超过重试次数10次。失败。Mekim.BaSdSalesOrderMob.iOS
严重性 代码 描述 项目 文件 行 抑制状态
错误 无法复制文件"C:\Users\waic.dev.nuget\packages\microsoft.intune.mam.xamarin.ios\16.0.3\build\xamarinios10....\lib\xamarinios10\res\MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALIndividualClaimRequestAdditionalInfo.h"到"obj\iPhoneSimulator\Debug\Microsoft.Intune.MAM.iOS.resources/MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALIndividualClaimRequestAdditionalInfo.h"。找不到路径的一部分:'obj\iPhoneSimulator\Debug\Microsoft.Intune.MAM.iOS.resources/MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALIndividualClaimRequestAdditionalInfo.h'。Mekim.BaSdSalesOrderMob.iOS
严重性 代码 描述 项目 文件 行 抑制状态
错误 无法将文件"C:\Users\waic.dev.nuget\packages\microsoft.intune.mam.xamarin.ios\16.0.3\build\xamarinios10....\lib\xamarinios10\res\MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALIndividualClaimRequestAdditionalInfo.h"复制到"obj\iPhoneSimulator\Debug\Microsoft.Intune.MAM.iOS.resources/MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALIndividualClaimRequestAdditionalInfo.h"。已超过重试次数10次。失败。Mekim.BaSdSalesOrderMob.iOS
严重性 代码 描述 项目 文件 行 抑制状态
错误 无法复制文件"C:\Users\waic.dev.nuget\packages\microsoft.intune.mam.xamarin.ios\16.0.3\build\xamarinios10....\lib\xamarinios10\res\MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALPublicClientApplication+SingleAccount.h"到"obj\iPhoneSimulator\Debug\Microsoft.Intune.MAM.iOS.resources/MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALPublicClientApplication+SingleAccount.h"。找不到路径的一部分:'obj\iPhoneSimulator\Debug\Microsoft.Intune.MAM.iOS.resources/MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers\MSALPublicClientApplication+SingleAccount.h'。Mekim.BaSdSalesOrderMob.iOS
清理项目与NuGet缓存
- 关闭Visual Studio,手动删除项目根目录下的
obj和bin文件夹 - 打开命令提示符,执行以下命令清理NuGet缓存:
dotnet nuget locals all --clear - 重新打开项目,右键点击iOS项目,依次选择清理和生成
- 关闭Visual Studio,手动删除项目根目录下的
手动创建缺失的目标路径
根据错误提示的目标路径,手动创建完整的文件夹结构:obj\iPhoneSimulator\Debug\Microsoft.Intune.MAM.iOS.resources/MSAL.xcframework\macos-arm64_x86_64\MSAL.framework\Versions\Current\Headers
创建完成后重新构建项目检查文件权限
确认Visual Studio拥有项目目录的读写权限:- 右键项目根文件夹,选择属性 -> 安全选项卡
- 找到当前登录用户,确保其拥有修改和写入权限,若没有则添加对应权限
调整NuGet包版本
当前使用的Microsoft.Intune.MAM.Xamarin.iOS16.0.3版本可能存在兼容性问题,尝试更换版本:- 在NuGet包管理器中卸载该包
- 安装15.x系列的稳定版本或最新兼容版本,再重新构建项目
验证构建配置
确认项目的构建配置正确:- 检查构建目标为iPhone Simulator
- 确认平台架构选择与模拟器匹配,避免因架构不匹配导致的文件复制异常
内容的提问来源于stack exchange,提问作者ChanWai

