"ParseException: Ungültige Klassendateimagie (cafebabe) oder -version (0034.0000)" kann nicht behoben werden.
Ich habe kürzlich eine JAR-Datei aus meiner AWS-Anwendung importiert, die alle Objekte enthält, auf die ich in meiner Android-Anwendung verweisen werde. Sobald sich das in meinem Android Studio-Projekt befindet und über Gradle verbunden ist, wird der Fehler angezeigt und verschwindet erst, wenn ich mein importiertes Glas geleert und alles neu erstellt habe.
Was ich gelesen habe:
Dieser Fehler kann legitim sein. Dies kann passieren, wenn eine Android-Anwendung 65.000 Methodennamen überschreitet. Meine Anwendung mag groß sein, aber ich wäre erstaunt, wenn sich alle von mir importierten Bibliotheken darüber summieren würden ... Ich werde es nicht ausschließen, aber das sind viele Methoden. Nach allem, was ich gesehen habe, war dies neun Mal von zehn ein Konfigurationsfehler. In den ersten Artikeln, die ich gelesen habe, wurde darauf hingewiesen, dass Proguard alle nicht verwendeten Methoden entfernen kann, aber das hat nicht geholfen.
Meine Konfiguration:
Ich habe alles in meiner Android Studio-Umgebung so eingestellt, dass Java 7 ausgeführt wird:
Project Bytecode Version: 1.7JDK-Speicherort: C: \ Programme \ Java \ jdk1.7.0_45build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 20
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.example.maveric.helloworld"
minSdkVersion 15
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.gms:play-services:4.2.42'
compile 'com.android.support:appcompat-v7:20.0.0'
compile 'org.apache.commons:commons-io:1.3.2'
compile 'com.cedarsoftware:json-io:4.3.0'
}
Ich habe die letzten 5 Stunden damit verbracht, jede einzelne Lösung auf SO zu testen, und hatte mit keiner von ihnen ein bisschen Glück.