DexGuard java.io.IOException: та же самая входная банка
Я сталкиваюсь с этой проблемой при использовании dexguard
> Task :app:dexguardStaging FAILED
Метод TaskInternal.execute() устарел и планируется удалить в Gradle 5.0. Существуют более эффективные способы повторного использования логики задач, см. https://docs.gradle.org/4.3/userguide/custom_tasks.html.
FAILURE: сборка не удалась, исключение.
- Что пошло не так: выполнение задачи не выполнено:app:dexguardStaging.
java.io.IOException: один и тот же входной jar [/Users/radityagumay/Library/Android/sdk/platforms/android-25/android.jar] указывается дважды.
Кто-нибудь может помочь?
ОБНОВЛЕНИЕ Я исправил эту проблему, вернувшись к дистрибутиву 3.5, ранее я использовал 4.3,
distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-all.zip
и понизьте все сборки с 3.0.0 до 2.3.3, удалите maven google.com
classpath 'com.android.tools.build:gradle:2.3.3'
Эта проблема возникла, когда я использовал Android Studio 3 со сборкой gradle 3.0.0 или 3.0.1, а dexguard (7.3.11) также использовал (8.0.18) enable.
это может не соответствовать версии последней версии и версии dexguard.
Спасибо
1 ответ
Пожалуйста, попробуйте ниже код и дайте мне знать, если это работает для вас
Сделайте изменения в вашем Gradle, как это
применить плагин: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
defaultConfig {
applicationId "com.example.testapp"
minSdkVersion 16
targetSdkVersion 26
versionCode 1
versionName "1.1"
multiDexEnabled true // put this line in your gradle
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
//put below code in your gradle
dexOptions {
preDexLibraries = false
javaMaxHeapSize "4g"
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:multidex:1.0.2' //put this dependencies in your gradle
// Rest of your dependencies
}
& также изменения в вашем файле приложения.
public class TestApplication extends MultiDexApplication {
@Override
public void onCreate() {
super.onCreate();
}
}
&
В файле манифеста >> в теге приложения >> укажите ниже строку
android:name=".TestApplication"
Надеюсь, это сработает для вас, и если это сработает, дайте мне знать.