Я перебрал несколько потоков с одной и той же ошибкой, чтобы найти решение (они упоминают повторяющиеся имена пакетов в файлах Gradle, дубликаты в AndroidManifests и несоответствия версий зависимостей), но ни один из них не совпадает с моим случаем.Это сообщение об ошибке, которое я получаю при сборке приложения:
Program type already present: ff.ecochallenges.game.BuildConfig
Message{kind=ERROR, text=Program type already present: ff.ecochallenges.game.BuildConfig, sources=[Unknown source file], tool name=Optional.of(D8)}
Мой файл gradle приложения выглядит следующим образом:
apply plugin: 'com.android.application'
android {
compileSdkVersion 27
defaultConfig {
applicationId "ff.ecochallenges"
minSdkVersion 21
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.google.firebase:firebase-storage:16.0.1'
implementation 'com.google.firebase:firebase-firestore:17.1.0'
implementation 'com.android.support:support-v4:27.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.android.support:cardview-v7:27.0.2'
implementation 'com.android.support:recyclerview-v7:27.0.2'
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'com.google.firebase:firebase-auth:16.0.3'
implementation 'com.google.firebase:firebase-database:16.0.1'
implementation 'com.firebaseui:firebase-ui-auth:4.1.0'
implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.firebaseui:firebase-ui-storage:0.6.0'
implementation 'com.github.bumptech.glide:glide:3.7.0'
implementation 'com.firebaseui:firebase-ui-database:4.1.0'
implementation 'com.inthecheesefactory.thecheeselibrary:stated-fragment-support-v4:0.9.1'
implementation 'com.google.android.gms:play-services-auth:16.0.0'
implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
implementation 'com.github.varunest:sparkbutton:1.0.5'
implementation 'info.hoang8f:android-segmented:1.0.6'
implementation "com.android.support:support-compat:27.1.1"
implementation project(":garden-release")
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(":game")
// Required for local unit tests (JUnit 4 framework)
// Required for instrumented tests
androidTestImplementation 'com.android.support:support-annotations:24.0.0'
androidTestImplementation 'com.android.support.test:runner:0.5'
}
apply plugin: 'com.google.gms.google-services'
И градел для новой библиотеки, которую я добавил (game) выглядит следующим образом:
apply plugin: 'com.android.library'
android {
compileSdkVersion 27
defaultConfig {
minSdkVersion 21
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
//[DO NOT REMOVE THE COMMENTED CODE BELOW!]
//////////////////////////////////////////////////////
afterEvaluate {
assembleDebug.finalizedBy(exportJar)
}
/////////////////////////////////////////////////////
//[DO NOT REMOVE THE COMMENTED CODE ABOVE!]
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.google.firebase:firebase-database:16.0.1'
implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
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'
}
//[DO NOT REMOVE THE COMMENTED CODE BELOW!]
///////////////////////////////////////////////////////////////////////////////////////////////////
task exportJar(type: Copy) {
from('build/intermediates/packaged-classes/debug/classes.jar')
include('classes.jar')
into('../garden/Assets/Plugins/Android')
rename('classes.jar', 'ecochallenges.jar')
}
task deleteOldJar(type: Delete) {
delete '../garden/Assets/Plugins/Android/ecochallenges.jar'
}
exportJar.dependsOn(deleteOldJar)
///////////////////////////////////////////////////////////////////////////////////////////////////
//[DO NOT REMOVE THE COMMENTED CODE ABOVE!]
Когда я закомментирую строку "реализация проекта (": игра ")" в моем приложении, оно будет построено без ошибок, поэтому я уверен, что что-то не так с "игрой"Gradle, но я не могу найти, что это такое.