/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/ Xamarin.Android.Common.targets: Error: Tool exited with code: 2. Output: trouble writing output: Too many field references: 77369; max is 65536. You may try using --multi-dex option.
我更新了一些nugets后出现了错误。
当我在android设置中打开MultiDex选项并编译我的项目时,会出现以下情况-
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets: 错误: 工具退出代码: 10. 输出: 错误: 无法读取 [/Library/Frameworks/Xamarin.Android.framework/Versions/7.0.1-3/lib/xbuild-frameworks/MonoAndroid/v7.0/mono.android.jar] (无法处理类 [android/app/ActivityTracker.class] (不支持的类版本号 [52.0] (最大为 51.0,Java 1.7))) (pjr.mob.android)我可以看到与此相关的错误。
https://bugzilla.xamarin.com/show_bug.cgi?id=44187
https://bugzilla.xamarin.com/show_bug.cgi?id=44013
https://bugzilla.xamarin.com/show_bug.cgi?id=33052
https://bugzilla.xamarin.com/show_bug.cgi?id=35491
看起来我需要按照这些答案的详细说明手动下载和安装ProGuard 5.X -
Xamarin.Android Proguard - Unsupported class version number 52.0
Xamarin Android ProGuard Enable
并解决由此引起的任何问题。
然而,Xamarin Studio明确告诉我们,在proguard选项旁边的(i)信息框中,不建议在DEBUG版本中运行proguard,并且我们应该在尝试proguard后才运行multidex。
这是否意味着启用后我们将无法有效地进行调试?但是我无法进行DEBUG(即使我认为链接器可能有所帮助,我现在甚至无法运行发布构建)而没有启用它?
这是否意味着Xamarin支持会针对此问题进行处理,还是我需要考虑如何减少我们使用的软件包等(我不确定是否可以这样做,因为其中大部分与Google Play服务相关)。
感谢任何帮助。
Xamarin Studio Help > About中的其他信息
Java SDK:/usr Java版本“1.8.0_112” Java(TM) SE运行时环境(构建1.8.0_112-b16) Java HotSpot(TM) 64位服务器虚拟机(构建25.112-b16,混合模式)