VS2022中.NET MAUI仅保留iOS/Android平台时编译报错的解决方法
解决.NET MAUI编译错误:Improper project configuration: no AppxManifest is specified, but WindowsPackageType is not set to MSIX
清理项目文件中的Windows残留配置
打开项目的.csproj文件,执行以下操作:- 在
<TargetFrameworks>节点中,仅保留net8.0-android和net8.0-ios(根据你使用的.NET版本调整,比如net7.0),删除所有包含windows的目标框架。 - 删除所有包含
<WindowsPackageType>的配置项,以及其他Windows相关的PropertyGroup(比如<UseWindows>这类节点)。 - 移除所有Windows相关的ItemGroup,比如
<MauiWinUIApplication>、<Content Include="Platforms\Windows\**\*" />这类内容。
- 在
清除编译缓存与VS缓存
- 删除项目目录下的
bin和obj文件夹,彻底清理本地编译生成的文件。 - 关闭Visual Studio,删除VS组件缓存:前往
%LOCALAPPDATA%\Microsoft\VisualStudio\17.0_xxxx\ComponentModelCache(17.0对应VS2022,xxxx为你的VS实例随机字符),删除该文件夹内的所有文件。 - 重新打开项目,依次执行清理解决方案、还原NuGet包、重建解决方案。
- 删除项目目录下的
确认编译目标平台配置
- 在VS工具栏的解决方案平台下拉菜单中,选择Android或iOS作为当前编译目标。
- 若看不到对应平台,点击下拉菜单选择配置管理器,删除所有Windows相关的平台配置项,确保仅保留Android和iOS的项目配置。
检查启动配置文件
打开项目根目录下的Properties\launchSettings.json,删除所有Windows相关的启动配置节点(比如包含Windows的profiles项)。
内容的提问来源于stack exchange,提问作者HerrimanCoder
相关产品推荐
相关产品推荐

