如何修复MAUI中Microsoft.Maui.Resizetizer NuGet包的构建错误?
MAUI构建错误:Microsoft.Maui.Resizetizer XML格式异常解决
错误信息
1>MyApp -> MyApp\bin\Debug\net8.0-ios\iossimulator-x64\MyApp.dll 1>MyApp -> MyApp\bin\Debug\net8.0-maccatalyst\maccatalyst-x64\MyApp.dll 1>C:\Users\MyName\.nuget\packages\microsoft.maui.resizetizer\8.0.100\buildTransitive\Microsoft.Maui.Resizetizer.After.targets(781,9): error : Name cannot begin with the '4' character, hexadecimal value 0x34. Line 11, position 38. 1>Done building project "MyApp.csproj".
对应出错的MSBuild任务代码:
<GeneratePackageAppxManifest IntermediateOutputPath="$(_MauiIntermediateManifest)" AppxManifest="@(AppxManifest);@(_MauiAppxManifest)" GeneratedFilename="Package.appxmanifest" ApplicationId="$(_MauiWindowsApplicationId)" ApplicationDisplayVersion="$(ApplicationDisplayVersion)" ApplicationVersion="$(ApplicationVersion)" ApplicationTitle="$(ApplicationTitle)" AppIcon="@(MauiImage->WithMetadataValue('IsAppIcon', 'true'))" SplashScreen="@(MauiSplashScreen)" />
错误原因
该错误属于XML格式非法问题,提示XML元素名称不能以数字'4'开头,大概率由以下场景导致:
- 项目中
ApplicationId、自定义XML元素名称等配置值不符合XML规范,生成Package.appxmanifest时出现非法元素名; - 手动修改的
AppxManifest文件存在格式错误(如标签未闭合、属性引号不匹配、非法元素名); - 版本号相关属性(
ApplicationVersion/ApplicationDisplayVersion)的异常值触发XML生成逻辑出错。
解决办法
- 检查项目核心配置:打开项目
.csproj文件,确认以下属性格式:ApplicationId必须是合法XML元素名,不能以数字开头;ApplicationVersion需为四位数字格式(如1.0.0.0),ApplicationDisplayVersion需为语义化版本(如1.0)。
- 清理项目中间文件:删除项目目录下的
bin和obj文件夹,重启开发环境后重新构建; - 排查自定义AppxManifest:若项目存在手动添加的
Package.appxmanifest文件,检查是否有以'4'开头的元素名或XML语法错误; - 隔离Windows目标测试:暂时取消Windows平台构建目标,仅构建iOS/macCatalyst验证是否正常,确认错误是否来源于Windows平台的Manifest生成逻辑;
- 重置Windows平台配置:删除项目根目录下的
Platforms/Windows文件夹,通过Visual Studio的"添加平台"功能重新生成Windows平台配置文件。
内容的提问来源于stack exchange,提问作者Peter
相关产品推荐
相关产品推荐

