J'essaie de traiter avec Proguard une application de bureau MS Windows (Java 6 SE en utilisant le SWT LIB fourni par Eclipse). Et j'obtiens l'erreur critique suivante:
-dontskipnonpubliclibraryclasses -dontskipnonpubliclibraryclassmembers -optimizationpasses 3 -overloadaggressively -repackageclasses '' -allowaccessmodification -dontnote
4 Réponses :
Essayez d'ajouter l'option du manuel de PROGUARD : P>
-DontSkiPnonPublicLibraryClasses code> à votre ligne de commande. P>
limitations h2> pour l'efficacité,
PROGUARD ignore toujours n'importe quel privé ou
Package Cours de bibliothèque visibles tout en
lire des pots de bibliothèque. Si l'un d'entre eux
sont prolongés par la bibliothèque publique
classes, puis prolongé à nouveau par
classes d'entrée, Proguard se plaindre
Cela ne peut pas les trouver. Dans ce cas,
vous devrez utiliser le
-DontSkipnonPublicLibraryClasses code>
option, et peut-être même le
-DontSkipnonPublicLibraryClassMembers Code>. L'interface utilisateur graphique
a des cases à cocher pour ces paramètres. P>
blockQuote>
Oui, je l'ai fait et ces erreurs ont maintenant été résolues. Malheureusement, d'autres erreurs sont maintenant montées: je vais les ajouter dans mon post ci-dessus, comme une mise à jour
Oui merci Jrl, j'essaie la version de la ligne de commande de se rendre au travail, Coz, ce sera plus pratique pour moi.
Essayez de supprimer l'option -DontNote code>. Vous pouvez avoir des définitions en double que vous ne recevez pas d'avertissements pour, ou peut-être que vous ignorez les avertissements. P>
LOL: D Je suis en train d'ignorer les avertissements, à quel point cela peut être mauvais? Maintenant, je vais essayer d'ajouter des avertissements dans la conservation des classmères, je vais rédiger mes progrès.
Non, je n'ai aucun avertissement maintenant actuellement. J'avais seulement des notes, et quand j'ai mis -dontnote, je reçois toujours une erreur que pour moi est impossible à comprendre. Je colle toute la sortie de ma question originale de la mise à jour de la fin de l'année, voir ci-dessus.
J'ai eu le même problème, mais n'a pas essayé de spécifier le à corriger, tout ce que j'ai fait était de déplacer la portée de code ancien - avec erreur: p> nouveau code - sans problème. p> i avoir un sentiment que cela doit faire quelque chose avec PROGUARD et son analyse du code. P> p> -DontSkipnonpubliclibraryClasses code> ou toute autre option pour être corrigé. Mon problème était survenu sur
java.lang.stringbuffer code> classe, qui était très bizarre.
Stringbuffer CODE> La classe a été utilisée dans tout le projet et l'erreur ne s'est produite nulle part ailleurs.
Stringbuffer code>. p>
Avez-vous déjà trouvé une autre solution?
J'ai eu un problème avec une application en fonction de divers autres projets. J'ai essayé les solutions énumérées, mais aucune d'entre elles aide. Basé sur des tests, les étapes de rétrécissement et de préversification étaient correctement en cours d'exécution, l'optimisation a jeté l'erreur:
-optimizations !code/allocation/variable
Ajouter -verbose à la ligne de commande si vous n'avez pas à obtenir une trace de pile complète.