2016-02-25 13 views
25

Korzystanie Gradle opakowanie 2.10, a Android Gradle budować narzędzia 2.0.0-p7 2.1.0Proguard Printmapping nie działa w Android Studio 2.0.0 (i 2.1.0)

Z mojego build.gradle :

buildTypes { 
     all{ 
      minifyEnabled true 
      proguardFiles = [getDefaultProguardFile("proguard-android.txt"), 'proguard-project.pro']; 
     } 
    } 

To działa. Rzeczy są zaciemniane.

Mam następującą linię w moim proguard-project.pro, a także:

-printmapping my-mapping.txt

Wszystko inne w tym pliku działa poprawnie, ale mapowanie staje się coraz wydrukowany na niewłaściwym miejscu:

Printing mapping to [C:\path\to\my\project\build\outputs\mapping\debug\mapping.txt]

Czy ta składnia została zmieniona?

Uwaga: Próbowałem podać bezpośrednią ścieżkę. Próbowałem podać nazwę bez łącznika. Nic się nie zmienia.

Na razie właśnie wykonałem zadanie stopklatki.

+0

Co masz na myśli, Niewłaściwe miejsce? – RaGe

+0

@RaGe W przeszłości wiersz ten umieszczał plik mapowania w katalogu głównym projektu. Teraz, niezależnie od miejsca, w którym znajduje się ta linia, zawsze drukuje mapowanie w folderze kompilacji ORAZ o niewłaściwej nazwie, – VicVu

+0

Nie jestem zaznajomiony z tym, co było w przeszłości, ale jeśli chcesz umieścić go w określonym folder, powinieneś spróbować podać absolutną ścieżkę. Jeśli chodzi o złą nazwę, może myślnik w nazwie pliku jest problemem? Spróbuj umieścić ją w cudzysłowie. – RaGe

Odpowiedz

3

obliczu tego samego problemu, ale wydaje się, że

{projectRoot}\build\outputs\mapping\debug\mapping.txt 

jest właściwe miejsce dla plików mapowania teraz

+0

Czuję, że ta metoda jest po prostu zepsuta. Dlaczego kompilacja przejdzie wraz z mapowaniem, jeśli nie ma już działać? – VicVu

0

Może zmieni się follwoing

android { 
    buildTypes { 
     release { 
      runProguard true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'),'some-other-rules.txt' 
      //proguardFile 'some-other-rules.txt' 
     } 
    } 
} 
+0

To nie miało znaczenia. – VicVu

7

pliku odwzorowania w miejscu build\outputs\mapping\debug\mapping.txt jest wartością domyślną, która jest generowana nawet wtedy, gdy nie podasz -printmapping my-mapping.txt wewnątrz proguard-project.pro. Widzę, że nazwa zawsze jest mapping.txt, więc -printmapping jest ignorowana w nowej wersji Android Studio.

Pamiętam, że kiedyś był generowany w tym samym katalogu głównym projektu, gdzie proguard-project.pro jest obecny, ale potwierdzam, nie generuje on teraz w Androidzie Studio 2.0 i jest błędem, który można złożyć pod numerem Android Issue Tracker.


UPDATE

Link do Android Issue: https://code.google.com/p/android/issues/detail?id=205213

+2

Wygląda na to, że ktoś właśnie je złożył. Czy mógłbyś zaktualizować link do punktu tutaj? https://code.google.com/p/android/issues/detail?id=205213 – Pooks

0

Wystarczy spróbować uruchomić Androida Studio jako administrator.

-printmapping 

może nie pisać do folderu systemowego, który powoduje ten problem.

Powiązane problemy