2013-05-24 12 views
18

W prawie każdej aplikacji na Androida potrzebujemy kilku projektów bibliotecznych, takich jak ABS, HoloEverywhere itp. Większość z nich znajduje się w Maven Central, co jest dobre. Co jest złe, większość z nich zależy od biblioteki wsparcia i oczywiście wskazuje na przestarzałą (mam na myśli bardzo błędną) wersję w Maven Central.Biblioteka pomocnicza Gradle i Android

Obecnie utrzymujemy nasze własne repozytoria z niestandardowymi wersjami Androida (przy użyciu narzędzia Maven Android SDK deployer) i każdą biblioteką (pobraną z git iz dostosowaną zależnością maven). Czy będzie łatwiejszy sposób na zrobienie tego przy użyciu nowego systemu budowania opartego na Gradle (jak nadpisywanie zależności między projektami aar)?

+0

Czy możesz wybrać odpowiedź? –

Odpowiedz

39

Będziemy dostarczać wersje artefaktów bibliotek wsparcia. Bądźcie czujni.

Edytuj: artefakty są już dostępne. Musisz pobrać "Repozytorium pomocy technicznej Androida" w swoim pakiecie SDK. System gradle build automatycznie użyje tego jako lokalnego repozytorium Maven.

Istnieją 3 artefakty w nim teraz:

com.android.support:support-v4:21.0.0 
com.android.support:support-v13:21.0.0 
com.android.support:gridlayout-v7:21.0.0 
com.android.support:appcompat-v7:21.0.0 
+0

Dzięki Xavier, to będzie dla nas duża pomoc. Będziemy również uwielbiać nową funkcję gradle do uruchamiania wielu emulatorów. Obecna wspólna konfiguracja z macierzą budowaną w jenkinsach za pomocą wtyczki emulatora androida jest daleka od ideału. – stoilkov

+1

Działa to doskonale, gdy mój projekt zależy od biblioteki pomocy technicznej. Ale kiedy wykonuję 'gradle assemble' przy użyciu biblioteki AAR innej firmy z repozytorium Maven Central, która zależy od _support-library-v4 r18_, pojawia się błąd:' Nie można znaleźć com.google.android:support-v4: r18. Wymagane przez: com.example: aplikacja-projekt: nieokreślony> przykładowy com: projekt-lib: 1.0.0-SNAPSHOT' Więcej informacji na temat tego problemu można znaleźć [tutaj] (http://stackoverflow.com/questions/18559660/android-gradle-build-with-maven-dependency-which-depend-on-support-library-r18). –

+0

Ta aktualizacja jest technicznie poprawna, ale działa tylko wtedy, gdy używane są wtyczki Gradle z biblioteki Android lub Android. –

4
apply plugin: 'android-library' 

dependencies { 
    compile 'com.android.support:support-v4:21.0.0' 
} 
Powiązane problemy