发布MAUI Windows(WinUI3)应用时如何指定.msix输出文件夹?
MAUI Windows打包时MSIX输出路径未跟随
-o参数的问题 这不是MAUI Windows的bug,而是打包流程的设计逻辑导致的——-o(--output)参数仅控制**构建产物(如dll、资源文件等)**的输出目录,而MSIX包的生成由Windows App SDK的MsixPackaging目标单独处理,默认会在项目的bin/[Configuration]/[TargetFramework]/[RuntimeIdentifier]/AppPackages路径下生成安装包。
解决方案
需要添加AppxPackageDir参数来指定MSIX包的输出路径,修改后的完整命令如下:
dotnet publish -f net8.0-windows10.0.19041.0 -c Release -p:RuntimeIdentifierOverride=win10-x64 -o "D:\Temp\BuildOutside" -p:AppxPackageDir="D:\Temp\BuildOutside\AppPackages"
如果希望MSIX直接输出到指定根目录(不保留AppPackages子文件夹),可以将参数改为:
-p:AppxPackageDir="D:\Temp\BuildOutside"
补充说明
从你的执行日志能看到,构建阶段已正确将产物输出到D:\Temp\BuildOutside\,但后续打包阶段因为未指定AppxPackageDir,所以沿用了默认路径生成MSIX包。添加该参数后,打包流程会直接在你指定的目录下生成安装包,避免重复复制文件到默认路径。
内容的提问来源于stack exchange,提问作者Luke Vo
相关产品推荐
相关产品推荐

