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

如何通过CLI为.NET MAUI Windows应用指定版本发布?

.NET MAUI Windows应用CLI指定版本发布解决方案

有效解决步骤

  • 直接在publish命令中指定包版本
    Windows应用包的版本由MSBuild属性AppxPackageVersion控制,执行发布命令时直接传递该参数即可:

    dotnet publish -f net6.0-windows10.0.19041.0 -c Release /p:RuntimeIdentifierOverride=win10-x64 /p:AppxPackageVersion=1.0.0.6
    

    也可以拆分主版本和修订号分别指定:

    dotnet publish -f net6.0-windows10.0.19041.0 -c Release /p:RuntimeIdentifierOverride=win10-x64 /p:PackageVersion=1.0.0 /p:PackageVersionRevision=6
    
  • 持久化版本到项目文件(可选)
    如果需要固定版本,可在项目的Windows目标配置中添加版本属性,避免每次命令行输入:
    在.csproj文件中添加以下配置块:

    <PropertyGroup Condition="'$(TargetFramework)' == 'net6.0-windows10.0.19041.0'">
        <AppxPackageVersion>1.0.0.6</AppxPackageVersion>
    </PropertyGroup>
    

    之后直接执行基础publish命令即可生效。

  • 清理构建缓存
    旧构建缓存可能导致版本未更新,先执行清理再发布:

    dotnet clean
    dotnet publish -f net6.0-windows10.0.19041.0 -c Release /p:RuntimeIdentifierOverride=win10-x64 /p:AppxPackageVersion=1.0.0.6
    

为什么之前的方法无效

  • <ApplicationDisplayVersion>和<ApplicationVersion>是MAUI跨平台版本字段,不会同步覆盖Windows应用包的版本,Windows包版本优先级由AppxPackageVersion控制。
  • 手动修改Platform->Windows->app.manifest中的assemblyIdentity版本会被MSBuild构建过程自动覆盖,无法生效。
  • dotnet publish的--version参数是通用发布参数,不适用于Windows应用包的版本控制逻辑,必须使用Windows特定的MSBuild属性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 16:50:43