2015-11-19 2 views
0

Я получаю эту ошибку:дубликат записи: Android/поддержка/аннотации/ColorRes.class

Error:Execution failed for task ':mobile:packageAllDebugClassesForMultiDex'. 
> java.util.zip.ZipException: duplicate entry: android/support/annotation/ColorRes.class 

Что я делаю?

1-multiDexEnabled

2-добавить следующее: конфигурации {все * .exclude группы: 'com.android.support', модуль: 'Поддержка-v4'} и никакой работы (другой дубликат ошибки входа)

3-Удалить зависимости один за другим. не работает или получить другую ошибку

4-исключения зависимостей один за другим и не работает

screenshot

Что может быть проблема?

build.gradle

apply plugin: 'com.android.application' 


    dependencies 
    { 
     compile 'com.android.support:support-v4:22.2.1' 
     compile 'com.android.support:appcompat-v7:22.2.1' 
     compile 'com.android.support:cardview-v7:21.0.3' 
     compile 'com.android.support:recyclerview-v7:21.0.3' 
     compile 'com.android.support:multidex:1.0.1' 
     compile 'com.google.android.gms:play-services:8.3.0' 
     compile 'com.google.maps.android:android-maps-utils:0.4' 
     compile 'com.afollestad:material-dialogs:[email protected]' 
     compile 'com.bignerdranch.android:recyclerview-multiselect:0.1' 
     compile 'com.j256.ormlite:ormlite-android:4.48' 
     compile 'com.melnykov:floatingactionbutton:1.2.0' 
     compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3' 
     compile 'se.emilsjolander:StickyScrollViewItems:1.1.0' 
     compile fileTree(include: ['*.jar'], dir: 'libs') 
     compile files('libs/appodeal-1.13.10.jar') 
     compile files('libs/applovin-6.1.4.jar') 
     compile files('libs/inmobi-5.0.1.jar') 
     compile files('libs/android-support-v4-22.2.1.jar') 
     compile files('libs/my-target-4.1.2.jar') 
     compile files('libs/yandex-metrica-android-2.00.jar') 
    } 

android 
{ 
compileSdkVersion 22 
buildToolsVersion "22.0.1" 


defaultConfig 
{ 
    minSdkVersion 15 
    targetSdkVersion 22 
    versionCode VERSION_MAJOR*10000000 + VERSION_MINOR*100000 +  VERSION_PATCH*1000 + VERSION_BUILD 
    versionName "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}" 

    // Enabling multidex support. 
    multiDexEnabled true 

    configurations { 
     all*.exclude group: 'com.android.support', module: 'support-v4' 
    } 

} 
+0

не могу сказать точно, но я думаю, это связано с использованием нескольких различных номеров версий в библиотеках поддержки, – Brucelet

+1

@Brucelet Спасибо, изменить все го em до 22, но не работает –

ответ

1

Это, вероятно, означает, что у вас есть несколько зависимостей либо реализации того же класса или ссылки на различные версии (в разных пакетах) одного и того же класса.

В первом случае может происходить потому, что вы в том числе библиотеки поддержки как из мавена: compile 'com.android.support:support-v4:22.2.1' и из локальной файловой системы: compile files('libs/android-support-v4-22.2.1.jar'). Я бы рекомендовал удалить локальную зависимость.

Последнее может произойти, если вы смешаете разные версии зависимостей поддержки Android. В вашем случае вы смешиваете старую версию CardView и RecyclerView с библиотеками поддержки новых корневых: compile 'com.android.support:appcompat-v7:22.2.1' compile 'com.android.support:cardview-v7:21.0.3'

Попробуйте сделать все ваши зависимостей com.android.support приводится ссылка строить 22.2.1.

Собирает все вместе, удалить локальный файл вашего проекта libs/android-support-v4-22.2.1.jar и попробовать это, как ваш Gradle зависимости:

dependencies 
    { 
     compile 'com.android.support:support-v4:22.2.1' 
     compile 'com.android.support:appcompat-v7:22.2.1' 
     compile 'com.android.support:cardview-v7:22.2.1' 
     compile 'com.android.support:recyclerview-v7:22.2.1' 
     compile 'com.android.support:multidex:1.0.1' 
     compile 'com.google.android.gms:play-services:8.3.0' 
     compile 'com.google.maps.android:android-maps-utils:0.4' 
     compile 'com.afollestad:material-dialogs:[email protected]' 
     compile 'com.bignerdranch.android:recyclerview-multiselect:0.1' 
     compile 'com.j256.ormlite:ormlite-android:4.48' 
     compile 'com.melnykov:floatingactionbutton:1.2.0' 
     compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3' 
     compile 'se.emilsjolander:StickyScrollViewItems:1.1.0' 
     compile fileTree(include: ['*.jar'], dir: 'libs') 
     compile files('libs/appodeal-1.13.10.jar') 
     compile files('libs/applovin-6.1.4.jar') 
     compile files('libs/inmobi-5.0.1.jar') 
     compile files('libs/my-target-4.1.2.jar') 
     compile files('libs/yandex-metrica-android-2.00.jar') 
    } 
+0

Спасибо, когда я удаляю android-support-v4-22.2.1.jar, я получаю несколько таких ошибок: Ошибка: (19, 31) error: package android.support.v4.view делает не существует –

+0

Похоже, вы исключаете это из своей сборки. – mszaro

+0

Попробуйте удалить это: 'configurations { all * .exclude group: 'com.android.support', module: 'support-v4' }' – mszaro

0

Если вам не нужна поддержка-аннотаций пакет, вы можете исключить его в вашем build.gradle приложение:

android{ 
    ... 
    configurations { 
     all*.exclude group: 'com.android.support', module: 'support-annotations' 
    } 
}