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

Blazor MAUI Windows升级.NET 9遇NU1102 NuGet包查找错误求助

Blazor MAUI升级.NET 9后Windows编译NU1102错误解决办法

问题根源

这两个包找不到的核心原因是构建环境里,指定版本的运行时和SDK引用包缺失,大概率和.NET SDK版本不匹配、NuGet缓存残留、Azure Pipelines环境配置有关。

具体修复步骤

  • 统一项目文件版本
    打开项目的.csproj文件,把所有.NET相关的包引用、目标框架版本和你用的9.0.101 SDK对齐。比如目标框架改成<TargetFrameworks>net9.0-android;net9.0-windows10.0.19041.0</TargetFrameworks>(Windows版本号按实际情况调整),同时把Microsoft.AspNetCore.Components.WebView.Maui这类包的版本改成9.0.101,别硬写死9.0.0。

  • 清理NuGet缓存和锁定文件
    在Azure Pipelines的构建步骤里加这两条命令,清掉旧缓存和锁定文件,强制拉取匹配当前SDK的包:

    dotnet nuget locals all --clear
    del $(Build.SourcesDirectory)\**\packages.lock.json
    
  • 检查Azure环境的SDK和工作负载
    虽然用了windows-latest和9.0.101 SDK,但得确认环境里装了Windows相关的运行时和MAUI工作负载。可以在构建前加步骤验证:

    dotnet --list-sdks
    dotnet --list-runtimes
    

    如果没找到对应版本的Microsoft.NETCore.App.Runtime.Mono.win-x64或者Windows SDK组件,直接安装MAUI Windows工作负载:

    dotnet workload install maui-windows --source https://api.nuget.org/v3/index.json
    
  • 确认NuGet源配置
    保证Azure Pipelines用的NuGet源包含官方NuGet.org,避免私有源漏包。加这条命令添加官方源:

    dotnet nuget add source https://api.nuget.org/v3/index.json --name nuget.org
    
  • 检查global.json文件
    如果项目根目录有global.json,里面的sdk.version要设成9.0.101,别强制用旧版本:

    {
      "sdk": {
        "version": "9.0.101",
        "rollForward": "latestMinor"
      }
    }
    

验证方法

改完之后重新跑Azure构建,看看错误是否消失。如果还不行,先在本地Windows环境用相同的.NET 9.0.101版本构建,排除Azure环境的特殊问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 15:55:06