Duplicate entry: com / android / volley / AuthFailureError.class при компиляции проекта в студии android

Я использую внешние библиотеки payu money sdk и linkedin-sdk, оба используют библиотеки волейбола, которые при компиляции проекта дают дубликат записи AuthFailureError.class

Ошибка: выполнение выполнено для задачи «: app: packageAllDebugClassesForMultiDex».

Java.util.zip.ZipException: дублировать запись: com / android / volley / AuthFailureError.class "

Я также добавил следующий код, чтобы исключить модуль, но все же такая же ошибка

configurations{ all*.exclude module: 'com.android.volley' }

пожалуйста помоги

Добавьте multiDexEnabled true в разделе defaultConfig вашего файла gradle

Затем,

Compile 'com.android.support:multidex:1.0.1' в ваших зависимостях

Наконец, добавьте ниже в свой класс приложений:

  @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); } 

Кроме того, проверьте, используете ли вы volley.jar в своей папке libs. Если это так, удалите этот файл jar и снова скомпилируйте. Иногда конфликты jar конфликтуют с компиляторами с использованием удаленного источника.

Просто удалите дубликат jar-файла (обратите внимание: используйте новую версию, удалите старую версию) для импорта «com.android.volley.AuthFailureError» в build.gradle. Затем очистите проект и перестройте проект, а затем запустите, вы получите результат.

Я наткнулся на эту же ошибку, и, прочитав это , я смог ее решить.

Попробуйте добавить эту строку в файл dir build.gradle вашего приложения –

 android{ configurations { all*.exclude group: 'com.android.volley' }} 

Надеюсь это поможет.

У меня была эта проблема, когда я попытался сгенерировать APK (release), и я решил, что это сменяет linkedin-sdk build.gradle :

Из:

 dependencies { compile 'com.android.support:support-annotations:20.0.0' compile 'com.android.support:support-v4:21.0.+' compile fileTree(dir: 'libs', include: ['*.jar']) compile files('libs/volley.jar') androidTestCompile('junit:junit:4.12') } 

Для того, чтобы:

 dependencies { compile 'com.android.support:support-annotations:20.0.0' compile 'com.android.support:support-v4:21.0.+' compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.volley:volley:1.0.0' androidTestCompile('junit:junit:4.12') } 

Это пример того, как исключать классы в зависимостях, если в графе есть дубликат.

  compile ('com.google.api-client:google-api-client-android:1.17.0-rc') { exclude module: 'httpclient' } 

Или попробуйте своим путем, просто добавьте еще текст

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

Итак, теперь вам нужно сделать

Поиск CTRL + SHIFT + N в студии android для класса AuthFailureError.class См., В каком банке содержится это, и удалите его, как указано выше (Это просто пример / Вы должны выяснить дублирующий класс и вручную удалить его)

Хорошо, я получил свой ответ

На mac вместо управления n это команда 0, и мне нужна команда

Конфигурации {all * .exclude module: 'volley-release'}

Просто удалите свою библиотеку волейбола из зависимости. Попробуйте очистить и перестроить проект, который работает для меня. Ex. Payusdk также реализует библиотеку волейбола, так что причина исключения показывает дубликат записи. Надеюсь это работает. Потому что я тоже нашел эту ошибку, и я делаю все, что она работает. Благодарю.

У меня была аналогичная проблема, когда я строил Jenkins, странно, она отлично работала на моей локальной машине. После добавления ниже исключить это работало как на локальной машине, так и у Дженкинса.

 android{ configurations { all*.exclude group: 'com.android.volley' }} 

Я добавил блок конфигураций в сборку моего приложения build.gradle внутри секции Android.

Если это имеет значение, версия SDK для компиляции – 22, а версия Build Tools – 25.0.0

Это работало как прелесть.