web-dev-qa-db-fra.com

Erreur Proguard Numéro de version de classe non pris en charge

J'ai toujours ce problème quand j'essaie de brouiller une application avec proguard

Error:ProGuard: [MyApp] Java.io.IOException: Can't read [C:\Program Files\Java\jdk1.8.0\jre\lib\rt.jar] (Can't process class [com/Oracle/net/Sdp$1.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.7)))

J'ai déjà mis à jour Proguard et vérifié le fichier project-config mais toujours la même erreur. J'utilise la dernière version d'Intellij IDEA

24
AndreaF

On dirait que Proguard ne supporte pas Java 8 en réalité. Vous devez utiliser JDK version 7.

EDIT-1

J'ai recompilé Proguard pour prendre en charge les classes JDK 8, ne prend pas en charge les nouvelles fonctionnalités de Java 8, mais si votre code n'utilise pas la nouvelle syntaxe Java 8 (par exemple, Lambda Expression) devrait fonctionner sans problème. Testé avec certains projets Android.

Pour utiliser remplacer le fichier proguard.jar dans 

Android-sdk\tools\proguard\ 

avec le contenu de THIS ARCHIVE

EDIT-2

Récemment a été publié le progiciel officiel 5 qui devrait résoudre le problème. Vous pouvez le télécharger depuis ICI

26
Silverstorm

ProGuard 5.0 (publié en août 2014) prend en charge Java 8.

9
Eric Lafortune

ProGuard n'a pas encore été mis à jour pour prendre en charge Java 8.

Un problème a déjà été soulevé contre ProGuard .

Eric Lafortune (développeur ProGuard) noté en octobre 2013

Je suis très occupé en ce moment, donc, de manière réaliste, je ne pourrai pas terminer ceci à court terme, désolé. Je garde cependant un œil sur les développements.

Il a également dit

ProGuard fonctionne probablement sur des fichiers de classe qui n'utilisent des fonctionnalités plus anciennes que si vous modifiez ou désactivez ClassUtil # checkVersionNumbers.

2
zmarties

Il existe un successeur du plug-in pyx4me ProGuard Maven sur github prenant en charge ProGuard 5.2, d'où la prise en charge de Java 8:

https://github.com/wvengen/proguard-maven-plugin

http://wvengen.github.io/proguard-maven-plugin/

Cordialement, Ekho

0
ekho