Dotfuscator Community版在Xamarin Forms Android中出现构建错误求助
解决Dotfuscator Community构建Xamarin.Forms项目时的System.Runtime强名称匹配错误
问题现象
使用Dotfuscator Community开发Xamarin.Forms项目时,此前构建正常,近期突然出现构建失败,耗时长达一小时后报错,核心日志显示Strong name match failed,无法找到匹配的System.Runtime.dll。
解决方案
清理Dotfuscator临时文件
删除日志中提到的Dotfuscator临时目录(如C:\Users\dibya\AppData\Local\Temp\Dotfuscator_20624),同时删除所有Dotfuscator_*开头的临时文件夹。清理完成后重启Visual Studio,重新执行构建。修复Tizen.NET NuGet包
报错涉及tizen.net\5.0.0.14562包,按以下步骤操作:- 在NuGet包管理器中卸载Tizen.NET包;
- 执行命令清理NuGet缓存:
dotnet nuget locals all --clear; - 重新安装对应版本的Tizen.NET包;
若项目无需Tizen平台支持,直接移除Tizen相关的项目目标和NuGet引用。
修正Dotfuscator程序集引用配置
打开项目的Dotfuscator配置文件(.dfproj),检查System.Runtime.dll的引用路径:- 找到
<AssemblyReference>节点中指向System.Runtime的条目; - 确保
HintPath指向项目实际依赖的System.Runtime.dll路径(而非Tizen包下的路径); - 若缺少该条目,手动添加正确的引用路径:
<AssemblyReference Include="System.Runtime"> <HintPath>$(TargetFrameworkDirectory)\System.Runtime.dll</HintPath> </AssemblyReference>
- 找到
临时关闭强名称验证(用于排查)
在Dotfuscator配置界面进入Settings > Strong Name,勾选Skip verification of strong names选项后重新构建。若构建成功,说明强名称验证是核心问题,需进一步排查程序集签名或版本匹配情况。更新Dotfuscator Community版本
安装最新版Dotfuscator Community,旧版本可能存在与Xamarin.Forms或.NET框架的兼容性问题。
报错日志
LOG: Checking NuGet Folder : C:\Users\dibya\.nuget\packages\tizen.net\5.0.0.14562\build\tizen40\ref LOG: Probing C:\Users\dibya\.nuget\packages\tizen.net\5.0.0.14562\build\tizen40\ref\System.Runtime.dll LOG: Strong name match failed LOG: Probing C:\Users\dibya\.nuget\packages\tizen.net\5.0.0.14562\build\tizen40\ref\System.Runtime.ni.dll LOG: Probing C:\Users\dibya\.nuget\packages\tizen.net\5.0.0.14562\build\tizen40\ref\System.Runtime\System.Runtime.ni.dll LOG: Not found in NuGet folders. LOG: Checking additional folder : C:\Users\dibya\AppData\Local\Temp\Dotfuscator_20624\~MobileA.0 LOG: Probing C:\Users\dibya\AppData\Local\Temp\Dotfuscator_20624\~MobileA.0\System.Runtime.dll LOG: Probing C:\Users\dibya\AppData\Local\Temp\Dotfuscator_20624\~MobileA.0\System.Runtime\System.Runtime.dll LOG: Checking additional folder : C:\Users\dibya\AppData\Local\Temp\Dotfuscator_20624\~MobileA.1 LOG: Probing C:\Users\dibya\AppData\Local\Temp\Dotfuscator_20624\~MobileA.1\System.Runtime.dll LOG: Probing C:\Users\dibya\AppData\Local\Temp\Dotfuscator_20624\~MobileA.1\System.Runtime\System.Runtime.dll LOG: Not found in additional folders. LOG: Loose binding enabled. Probing for later versions. Build Error.
内容的提问来源于stack exchange,提问作者Dibyasingh
相关产品推荐
相关产品推荐

