(Android) Proguard kann die dynamisch referenzierte Klasse javax.swing nicht finden. *

8

Ich habe ein Problem mit Proguard und der Verwendung von externen Bibliotheken. Mein Projekt kompiliert fehlerfrei und läuft erfolgreich auf einem echten Gerät, aber nur wenn ich es von Eclipse aus starte. Jetzt möchte ich eine verschleierte Release-Version erstellen, also habe ich Folgendes getan: lief "android update project -p ./" hinzugefügt

%Vor%

Wenn ich "ant release" starte, bekomme ich Folgendes:

%Vor%

Offensichtlich, javax.swing. Klassen werden in Android-Anwendungen sowie log4j-Klassen nicht benötigt. Wie kann ich die Suche nach referenzierten Bibliotheken verhindern?

    
Renat 24.12.2010, 10:13
quelle

3 Antworten

19

Wenn es keine Version von log4j ohne die Swing-Abhängigkeiten gibt und wenn Sie nicht einfach einen Filter für das jar im Build-Prozess hinzufügen können, ist die sauberste Lösung, nur diese speziellen Warnungen in proguard.cfg: %Vor%

Sie erhalten dann noch weitere Warnungen, die relevant sein könnten.

    
Eric Lafortune 25.12.2010 10:31
quelle
5

Niemals, nur hinzugefügt

%Vor%

zu proguard.cfg

    
Renat 24.12.2010 13:08
quelle
2

Nun, Sie haben log4j in Ihren Klassenpfad gesetzt (libs / log4j-1.2.14.jar). Deshalb ist log4j enthalten. Es zieht auch Referenzen auf javax.swing.

    
Thilo-Alexander Ginkel 24.12.2010 10:17
quelle

Tags und Links