Windows环境下MSBuild构建Xamarin Android项目偶发挂起问题求助
我之前在Windows上用MSBuild构建Xamarin Android项目时,也碰到过这种卡在package步骤的情况,试了不少方法才搞定,给你分享几个有效的排查和解决思路:
清理项目缓存并重新构建
很多时候是obj/bin文件夹里的缓存文件导致的异常。先手动删除项目根目录下的obj和bin文件夹,然后重启Visual Studio(如果用VS启动构建的话),再用MSBuild带上清理+重建参数执行:MSBuild YourSolution.sln /t:Clean;Rebuild /p:Configuration=Release检查Android SDK Build Tools版本兼容性
这个package步骤本质是调用Android的aapt工具,版本不兼容很容易导致进程挂起。打开Android SDK Manager,确保安装的Build Tools是Xamarin.Android官方支持的稳定版本(比如30.0.3这类,避开预览版),然后在项目的Android属性里指定对应的Build Tools版本。禁用并行构建减少资源冲突
MSBuild默认会用多线程并行构建,有时候多个进程竞争资源会导致package步骤卡住。可以尝试强制单线程构建,添加/m:1参数:MSBuild YourSolution.sln /p:Configuration=Release /m:1排查AndroidManifest.xml和资源文件问题
从你给出的命令看,构建过程加载了多个res文件夹和AndroidManifest.xml,可能存在资源冲突或配置错误。检查这些res文件夹里是否有重复的资源ID(比如同名的drawable、string),或者AndroidManifest.xml里有没有格式错误、重复声明的组件/权限。更新Xamarin.Android和MSBuild到最新版本
旧版本的Xamarin.Android存在一些已知的构建挂起bug,通过Visual Studio的“检查更新”功能,把Xamarin相关组件和MSBuild都更到最新稳定版,很多时候能直接解决这类问题。
内容的提问来源于stack exchange,提问作者Mani Vannan

