pro tip #1 - Android & Gradle

avatar icon blog author
Mikołaj Kąkol

Automatyczne generowanie kodu jest wiodącym trendem w programowaniu na Androida. Biblioteki takie jak Dagger, ParcelablePlease, czy też najnowsze Googlowe Data Binding generują masę kodu, który normalnie musielibyśmy napisać sami. Gdy wszystko jest skonfigurowane poprawnie nie ma z nimi problemu, lecz sytuacja, gdy Dagger nie może wygenerować klas do injekcji z powodu błędnie dodanych nowych zależności, a Data Binding się sypie z powodu błędu w XML'ach, nie jest niecodzienna. Wówczas kompilator potrafi wypluć setki błędów z nieznalezionymi klasami.

Ale gdzie jest źródło problemu, co spowodowało, że to wszystko się posypało? No cóż tego się nie do wiemy, gdyż limit błędów wypluwanych przez Gradle to domyślnie 100. Najprostszy sposób, aby sprawdzić co się stało to zwiększyć ilość wyświetlanych błędów dodając w konfiguracji build.gradle projektu:

allprojects {
    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs << "-Xmaxerrs" << "400"
        }
    }
}