Jestem nowy Gradle systemu budowania, Mam projektu biblioteki, która obejmuje współzależności jak modernizowanych okhttp itpAndroid AAR zależności
Skompilowałem mój projekt i utworzony plik AAR. Stworzyłem projekt dummy i dodałem moją bibliotekę aar jako zależność.
Teraz, jeśli nie dodam opcji Retrofit i okhttp jako zależności w pliku build.gradle mojej dummy app, moja aplikacja ulega awarii z wyjątkiem klasy nie znaleziono.
Moje pytanie brzmi: Ponieważ plik biblioteki aar zawiera już funkcję Retrofit i okhttp jako zależność, to dlaczego muszę je również jawnie dodawać do pliku build.gradle? Czy jest w pobliżu praca.
Oto moja biblioteka build.gradle
apply plugin: 'com.android.library'
buildscript {
repositories {
mavenCentral()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.0.+'
}
}
allprojects {
repositories {
jcenter()
}
}
android {
compileSdkVersion 22
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.+'
compile 'com.android.support:recyclerview-v7:21.+'
compile 'com.android.support:cardview-v7:21.+'
compile 'com.google.android.gms:play-services:6.5.87'
compile 'com.squareup.okhttp:okhttp:2.2.0'
compile 'com.squareup.retrofit:retrofit:1.9.0'
}
uratowałeś mój dzień, ale być jasne, musimy dodać 'mavenLocal()' 'build.gradle' do dnia aplikacja, która będzie korzystać z biblioteki, a nie w samej bibliotece – Guillaume