Я хочу выполнить работу, отличную от моей пользовательской библиотеки, поэтому я добавляю варианты продуктов в свою пользовательскую библиотеку.
Я добавил измерения, варианты продуктов, конфигурации для библиотеки и приложения.
Кроме того, я добавил publishNonDefault true
в библиотеку, как это предусмотрено в Интернете.Но я все еще не в состоянии построить свой gradle.Я не могу понять, что я делаю неправильно?Пожалуйста, ведите меня.Заранее спасибо.Я уже добавил конфигурации, зависимости в gradle
Мой библиотечный gradle выглядит так:
android {
compileSdkVersion 28
defaultConfig {
minSdkVersion 21
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
publishNonDefault true
flavorDimensions "api"
productFlavors {
pagination {
dimension "api"
versionCode 1
versionName "1.0"
}
withoutPagination {
dimension "api"
versionCode 1
versionName "1.0"
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
А мой Application gradle (app.gradle) выглядит так:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.example.tagapplication"
minSdkVersion 23
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
flavorDimensions "api"
productFlavors {
pedia{
dimension "api"
versionCode 1
versionName "1.0"
}
gynae{
dimension "api"
versionCode 1
versionName "1.0"
}
}
buildTypes {
debug{
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
configurations{
pediaDebugImplementation
pediaReleaseImplementation
gynaeDebugImplementation
gynaeReleaseImplementation
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:recyclerview-v7:28.0.0'
pediaDebugImplementation project(path: ':taglibrary', configuration: 'paginationDebug')
gynaeDebugImplementation project(path: ':taglibrary', configuration: 'withoutPaginationDebug')
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
Я ожидаю, что Gradle должен собираться так, как я предоставил конфигурации и варианты продукта.Но я получаю сообщение об ошибке при построении gradle:
ОШИБКА: не удалось найти метод pediaDebug () для аргументов [DefaultProjectDependency {dependencyProject = 'project': taglibrary '', configuration = 'paginationDebug'}]для объекта типа org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
Пожалуйста, помогите мне.Заранее спасибо:)