Pytanie Android - błąd wpisania błędnego kodu do programu Proguard


Próbuję użyć proguard w aplikacja na Androida który używa a projekt biblioteki Androida i pojawia się następujący błąd:

java.io.IOException: Can't write 
    [/private/var/folders/Pg/PgUpPJQ-E5qxL7jX6kpdCE+++TI/-Tmp-/android_3140050575281008652.jar] 
    (Can't read [proguard.ClassPathEntry@1f8d244] 
    (Duplicate zip entry 
    [be.class == android_144638064543155619.jar:com/comp/dp/library/R$anim.class]))
at proguard.OutputWriter.writeOutput(OutputWriter.java:224)
at proguard.OutputWriter.execute(OutputWriter.java:120)
at proguard.ProGuard.writeOutput(ProGuard.java:391)
at proguard.ProGuard.execute(ProGuard.java:152)
at proguard.ProGuard.main(ProGuard.java:499)

Mój plik proguard.cfg jest to wraz z kilkoma -libraryjars odnosi się do rt.jar i kilka innych bibliotek zależnych.

Domyślam się, że ten problem jest związany z korzystaniem z Library Project i że ten program próbuje dwukrotnie przetworzyć dane z projektu bibliotecznego. Ale nie byłem pewien, które opcje należy użyć, aby to naprawić.

Wszelkie sugestie / wskazówki są mile widziane.

Aktualizacja 1:  Usuwając -injars bin/classes Udało mi się rozwiązać ten problem. Zgaduję, że ponieważ proguard przetwarza zarówno projekt biblioteki, jak i projekt aplikacji .class pliki projektu bibliotecznego zostały przetworzone dwukrotnie. Raz w projekcie bibliotecznym bin/classes folder i inny czas w projekcie aplikacji bin/classes teczka.


12
2018-02-14 15:05


pochodzenie


By removing the -injars bin/classes - gdzie to jest? - アレックス


Odpowiedzi:


The Aktualizacja 1 na pytanie rozwiązał mój problem i jestem teraz w stanie uruchomić moją aplikację.

Ta odpowiedź ma na celu zaznaczenie pytania jako odpowiedzi, którą mogę zrobić po dwóch dniach.


4
2018-02-14 16:26



mój błąd jest trochę inny, ale nie mam klauzul "-jjars". Proszę mi pomóc, zmęczony tym! Proguard powrócił z kodem błędu 1. Zobacz konsolę Ostrzeżenie: nie można zapisać zasobu [META-INF / MANIFEST.MF] (Zduplikowany wpis zip [android-support-v4.jar: META-INF / MANIFEST.MF]) Ostrzeżenie: można napisz zasób [META-INF / MANIFEST.MF] (Zduplikowany wpis zip [library.jar: META-INF / MANIFEST.MF]) - thecr0w
@ thecr0w, rozwiązałeś to? - l33t
@ l33t, przepraszam, minęło dużo czasu i nie mogę ci nic powiedzieć. - thecr0w
Haha .. @ thecr0w xkcd.com/979 Szukam tego samego rozwiązania. - TheHippo
@ 500865 Mam ten error.plz dać mi rozwiązanie. nie można zapisać zasobu [META-INF / MANIFEST.MF] (Zduplikowany wpis zip [android-support-v4.jar: META-INF / MANIFEST.MF]) Ostrzeżenie: nie można zapisać zasobu [META-INF / MANIFEST. MF] (Zduplikowane wejście na suwak [library.jar: META-INF / MANIFEST.MF]) - dipali


Jeśli otrzymasz zduplikowany wpis zip, oznacza to, co on mówi, otwórz słoik i sprawdź duplikaty.

Na przykład sprawdź, czy plik build.xml nie zawiera niczego podobnego

<zipfileset src="${file.reference.joda-time-2.2.jar}" includes="**/*.class"/>
<zipfileset src="${file.reference.joda-time-2.2.jar}" includes="**/*"/>

Obejmuje to dwa razy pliki .class!


2
2017-10-17 09:51