AppCenter上Xamarin.iOS构建失败(NETSDK1004错误)求助
Xamarin.iOS项目在AppCenter中配置SDK16.5/Xcode15.0.1预览版后构建失败(NETSDK1004错误)
问题描述
在AppCenter中为Xamarin.iOS项目配置iOS SDK 16.5 + Xcode 15.0.1预览版后,构建流程无法完成;切换至SDK17版本后问题依旧。核心错误为NETSDK1004,提示找不到project.assets.json文件,需执行NuGet包还原,后续多个依赖项目连锁构建失败,最终msbuild返回代码1。
关键错误日志片段:
/Library/Frameworks/Mono.framework/Versions/6.12.0/lib/mono/msbuild/Current/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(241,5): error NETSDK1004: Assets file '/Users/runner/work/1/s/Native.Forms/ZW.MobileNET/ZW.MobileNET.Common/obj/project.assets.json' not found. Run a NuGet package restore to generate this file. [/Users/runner/work/1/s/Native.Forms/ZW.MobileNET/ZW.MobileNET.Common/ZW.MobileNET.Common.csproj] Done Building Project "/Users/runner/work/1/s/Native.Forms/ZW.MobileNET/ZW.MobileNET.Common/ZW.MobileNET.Common.csproj" (default targets) -- FAILED.
解决方案
1. 手动在AppCenter添加NuGet还原步骤
AppCenter默认的还原流程可能遗漏了部分项目,需强制添加:
- 进入项目的AppCenter构建配置页
- 在「构建前脚本」中添加命令:
# 单个项目还原 nuget restore /Users/runner/work/1/s/Native.Forms/ZW.MobileNET/ZW.MobileNET.Common/ZW.MobileNET.Common.csproj # 或者整个解决方案批量还原 nuget restore /Users/runner/work/1/s/Native.Forms/你的解决方案文件名.sln - 保存配置后重新触发构建
2. 检查NuGet包源与凭据
- 确认项目根目录的
NuGet.Config文件包含有效包源(如nuget.org),无拼写错误或访问限制 - 若使用私有NuGet源,需在AppCenter构建环境中配置对应的访问密钥
3. 清理AppCenter构建缓存
缓存残留可能导致依赖解析异常:
- 在构建配置页找到「缓存」选项,勾选清理所有构建缓存
- 重新启动构建流程
4. 验证项目文件兼容性
- 打开
ZW.MobileNET.Common.csproj,确认<TargetFramework>(如netstandard2.1)与当前Xamarin.iOS版本兼容 - 检查项目引用的NuGet包,更新所有不兼容Xcode15的包至最新稳定版
5. 降级Xcode版本测试
Xcode15.0.1预览版存在未知兼容性问题:
- 暂时切换至Xcode14.x稳定版本,验证构建是否正常
- 若恢复正常,等待Xcode15正式版发布后再尝试升级
内容的提问来源于stack exchange,提问作者AK_Developer
相关产品推荐
相关产品推荐

