Próbuję użyć PROGUARD w moim projekcie Xamarin.Android jeszcze kompilacja nie powiedzie się z powodu błędu Unsupported class version number [52.0] (maximum 51.0, Java 1.7)
Xamarin.Android Proguard - numer wersji nieobsługiwany klasa 52,0
widziałem z tych twoquestions że może to być niedopasowanie między Java 7 i Java 8, a dokładniej niektóre wersje proguard nie obsługują języka Java 8. Jednak w preferencjach Xamarin -> Lokalizacja SDK, Java SDK wskazuje na JDK 7: /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
Czy jest jakieś miejsce, w którym można wprowadzić proguard? skonfigurowane bardziej precyzyjnie? Każdy inny pomysł?
Oto dziennik awarii:
java.io.IOException: Nie można odczytać [/Library/Frameworks/Xamarin.Android.framework/Versions/7.0.0-18/lib/xbuild- frameworks/MonoAndroid/v7.0/mono.android.jar] (Nie można przetworzyć klasy [Android/app/ActivityTracker.class] (Nieobsługiwany numer wersji klasy [52.0] (maksymalnie 51,0, Java 1.7))) pod adresem proguard.InputReader.readInput (InputReader.java:230) pod adresem proguard.InputReader.readInput (InputReader.java:200) pod adresem proguard.InputReader.readInput (InputReader.java:178) pod adresem proguard.InputReader.execute (InputReader.java:78) pod adresem proguard.ProGuard.readInput (ProGuard.java:196) pod adresem proguard.ProGuard.execute (ProGuard.java:78) pod adresem proguard.ProGuard.main (ProGuard. java: 492) Spowodowane przez: java.io.IOException: Nie można przetworzyć klasy [Android/app/ActivityTracker.class] (nieobsługiwany numer wersji klasy [52,0] (maksymalnie 51,0, Java 1.7)) pod adresem proguard. io.ClassReader.read (ClassReader.java:112) w proguard.io.FilteredDataEntryReader.read (FilteredDataEntryReader.java:87) w proguard.io.JarReader.read (JarReader.java:65) w proguard.io. DirectoryPump.readFiles (DirectoryPump.java:65) pod adresem proguard.io.DirectoryPump.pumpDataEntries (DirectoryPum p.java:53) pod adresem proguard.InputReader.readInput (InputReader.java:226) ... 6 więcej Wywoływany przez: java.lang.UnsupportedOperationException: Nieobsługiwana klasa numer wersji [52.0] (maksymalnie 51,0, Java 1.7) w proguard.classfile.util.ClassUtil.checkVersionNumbers (ClassUtil.java:140) w proguard.classfile.io.ProgramClassReader.visitProgramClass (ProgramClassReader.java:88) w proguard.classfile.ProgramClass.accept (ProgramClass.java : 346) przy proguard.io.ClassReader.read (ClassReader.java:91) ... 11 więcej
9 ostrzegania (a) 1 błędu (y)
To działa dla mnie, dla szczegółów zamieniam folder ''/tools/proguard/lib' systemu Android przez folder 'lib' wewnątrz najnowsze wydanie Proguard ze środowiska sourceforge (obecnie 5.3.2). –
Jeśli zastąpisz cały katalog proguard, upewnij się, że skopiowałeś pliki konfiguracyjne ze starego katalogu: proguard-android-optimize.txt, proguard-android.txt, proguard-project.txt. – rooby
Najbardziej fantastyczną rzeczą jest to, że to naprawdę pomaga nawet 2 lata temu) Ten człowiek, uratowałeś mi dzień. – Darkmike