我正在尝试在我的Xamarin.Android项目中使用Proguard,但编译失败并出现错误 Unsupported class version number [52.0] (maximum 51.0, Java 1.7)
我从这两个 问题中看到,它可能与Java 7和Java 8不匹配,更确切地说,某些版本的proguard不支持Java 8.但是在Xamarin首选项 - > SDK位置中,Java SDK指向JDK 7:/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
是否有更精确配置proguard的地方?还有其他想法吗?
这是失败日志:
java.io.IOException:无法读取[/Library/Frameworks/Xamarin.Android.framework/Versions/7.0.0-18/lib/xbuild-frameworks/MonoAndroid/v7.0/mono.android.jar](可以在proguard.InputReader.readInput中的proguard.InputReader.readInput(InputReader.java:230)处理类[android/app/ActivityTracker.class](不支持的类版本号[52.0](最大51.0,Java 1.7))) InputReader.java:200)在proguard.InputReader.readInput(InputReader.java:178)的proguard.InputReader.exe执行(InputReader.java:78)proguard.ProGuard.readInput(ProGuard.java:196)proguard.ProGuard.执行(ProGuard.java:78)在proguard.ProGuard.main(ProGuard.java:492)引起:java.io.IOException:无法处理类[android/app/ActivityTracker.class](不支持的类版本号[ 52.0](最大51.0,Java 1.7))proguard.io.ClassReader.read(ClassReader.java:112)位于proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)的proguard.io.JarReader.read(JarReader) .java:65)在proguard.io.Director progPard.readFiles(DirectoryPump.java:65)中的progPard.EndoryPump.pumpDataEntries(DirectoryPump.java:53)中的yPump.readFiles(DirectoryPump.java:65)... 6更多引起者:java.lang. UnsupportedOperationException:proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:88)中proguard.classfile.util.ClassUtil.checkVersionNumbers(ClassUtil.java:140)中不支持的类版本号[52.0](最大51.0,Java 1.7)在proguard.classfile.ProgramClass.accept(ProgramClass.java:346)的proguard.io.ClassReader.read(ClassReader.java:91)... 11更多
9警告1错误