2016-11-10 2 views
0

Я использую Android-Studio 2.2.2 и попытался использовать эспрессо для тестирования. С прилагаемым build.gradle я получил эти сообщения об ошибке:Повторяющиеся файлы, скопированные в APK junit/runner/smalllogo.gif

Error:Execution failed for task  ':app:transformResourcesWithMergeJavaResForDebugAndroidTest'. 
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK junit/runner/smalllogo.gif 
File1: /home/christian/AndroidStudioProjects/PinMoney/app/libs/junit-4.12.jar 
File2: /home/christian/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/2973d150c0dc1fefe998f834810d68f278ea58ec/junit-4.12.jar 

Вот приложение Gradle:

apply plugin: 'com.android.application' 
apply plugin: 'com.neenbedankt.android-apt' 
def AAVersion = '4.1.0' 

android { 
compileSdkVersion 25 
buildToolsVersion "25" 

defaultConfig { 
    applicationId "de.cokuss.chhe.pinmoney" 
    minSdkVersion 16 
    targetSdkVersion 24 
    versionCode 1 
    versionName "1.0" 
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 
packagingOptions { 
    exclude 'LICENCE.txt' 
} 
} 

dependencies { 
compile fileTree(include: ['*.jar'], dir: 'libs') 
androidTestCompile files('libs/junit-4.12.jar') 
compile 'com.android.support:appcompat-v7:25.0.0' 
compile 'com.android.support:design:25.0.0' 
apt "org.androidannotations:androidannotations:$AAVersion" 
compile "org.androidannotations:androidannotations-api:$AAVersion" 
androidTestCompile ('com.android.support.test.espresso:espresso-core:2.2.2') { 
    exclude group: 'com.android.support' 
} 
androidTestCompile ('com.android.support.test:runner:0.5') { 
    exclude group: 'com.android.support' 
} 
} 

Я нашел несколько «Дублировать файлы копируются» проблемы при поиске, но всегда с различными файлами , Просто добавление

packagingOptions { 
     exclude 'LICENCE.txt' 
     exclude 'smalllogo.gif' //added 
} 

не помогает.

ответ

0

Это:

packagingOptions { 
     exclude 'LICENCE.txt' 
     exclude 'smalllogo.gif' //added 
} 

не было правильным решением, но с небольшой помощью Интернета я узнал, что я должен был сделать его более точным. Также я узнал, что smalllogo.gif - это не единственное, что я должен был исключить. Вот важная часть я должен был изменить:

packagingOptions { 
    exclude 'LICENCE.txt' // from old code 
    exclude 'junit/runner/smalllogo.gif' 
    exclude 'junit/runner/logo.gif' 
    exclude 'LICENSE-junit.txt' 
} 

Я не думаю, что это лучший способ, чтобы исправить эту проблему, но она работает.

Смежные вопросы