이 오류가 무엇을 의미하는지 잘 모르겠습니다.
Execution failed for task ':excelSior:packageAllDebugClassesForMultiDex'.
> java.util.zip.ZipException: duplicate entry: android/support/v4/util/TimeUtils.class
현재 android-support-v4.jar
내 라이브러리에 사용 하고 있습니다.
dependencies {
compile project(':addThisSDK')
compile project(':centeredContentButton')
compile project(':googleplayservices_lib')
compile files('libs/adxtag2.4.6.jar')
compile files('libs/android-support-v4.jar')
compile files('libs/aws-android-sdk-1.7.1.1-debug.jar')
compile files('libs/commons-lang-2.6.jar')
compile files('libs/crittercism_v4_4_0_sdkonly.jar')
compile files('libs/dd-plist.jar')
compile files('libs/FiksuAndroidSDK_4.1.1.jar')
compile files('libs/iqengines-sdk-barcode.jar')
compile files('libs/irEventTracker-1.2.jar')
compile files('libs/jolt-core-0.0.7.jar')
compile files('libs/json-utils-0.0.7.jar')
compile files('libs/jsoup-1.7.2.jar')
compile files('libs/kooaba-api-v4-java.jar')
compile 'com.android.support:multidex:1.0.0'
}
Gradle 동기화 중에 오류가 표시되지 않습니다. 응용 프로그램을 실행하려고 할 때
무엇이 문제일까요?
답변
v4 라이브러리를 삽입하고 라이브러리를 컴파일했는지 확인해야합니까? 앱이나 의존성 프로그램에서 라이브러리를 반복해서는 안됩니다.
V4가 하나만 남도록 반복 라이브러리를 삭제하십시오.
앱 dir build.gradle
파일에 다음 명령을 추가하십시오.
android{
configurations {
all*.exclude group: 'com.android.support', module: 'support-v4'
all*.exclude group: 'com.android.support', module: 'support-annotations'
}
}
그것은 나를 위해 작동합니다! 시도해 볼 수 있습니다!
답변
지금까지이 문제를 해결했지만 답이없는 상태로 유지되지 않도록 다음을 추가해보세요 build.gradle
.
configurations {
all*.exclude group: 'com.android.support', module: 'support-v4'
}
답변
이전 이클립스 프로젝트를 다시 가져올 때도 이런 종류의 문제가 발생했습니다. 프로젝트에서 jar 파일로 오래된 종속성이 발생했습니다.
그냥 제거
컴파일 fileTree (dir : ‘libs’, include : ‘* .jar’)
gradle 파일에서
gradle 파일에 종속성을 추가하십시오.
그것은 나를 위해 작동합니다 ..
답변
제 경우에는 설정 후 언급 된 “중복 입력”오류가 발생했습니다.multiDexEnable=true
build.gradle에서 했습니다.
오류를 완전히 해결하려면 먼저 64K 이상의 방법으로 앱 구성을 살펴보십시오. 앱 구성 (특히 “Gradle로 Multidex 용 앱 구성”)을 살펴보십시오.
또한 Android Studio에서 ctrl + n을 사용하여 “중복 항목”오류를 일으키는 클래스 발생을 검색하십시오. 중복을 포함하는 모듈 및 종속성을 확인하고 빌드에서 제외합니다. 예 :
compile ('org.roboguice:roboguice:2.0') {
exclude module: 'support-v4'
}
작동 할 때까지 여러 모듈 레이블을 시도해야했습니다. “support-v4″를 제외하면 “java.util.zip.ZipException : duplicate entry : android / support / v4 / *”와 관련된 문제가 해결됩니다.
답변
내 이해는 동일한 API에 대한 중복 참조가 있다는 것입니다 (아마도 다른 버전 번호). 명령 줄에서 빌드 할 때 디버그하기가 합리적으로 쉬워야합니다.
./gradlew yourBuildVariantName --debug
명령 줄에서 시도하십시오 .
문제가되는 항목이 첫 번째 실패입니다. 예는 다음과 같습니다.
14:32:29.171 [INFO] [org.gradle.api.Task] INPUT: /Users/mydir/Documents/androidApp/BaseApp/build/intermediates/exploded-aar/theOffendingAAR/libs/google-play-services.jar
14:32:29.171 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':BaseApp:packageAllyourBuildVariantNameClassesForMultiDex'
14:32:29.172 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :BaseApp:packageAllyourBuildVariantNameClassesForMultiDex FAILED'
위의 경우 내 libs 디렉토리 (theOffendingAAR)에 포함 된 aar 파일에는 Google Play 서비스 jar (예, 예, 알고 있습니다.) 파일이 포함되었으며 BaseApp 빌드 파일은 위치 서비스를 사용했습니다.
compile 'com.google.android.gms:play-services-location:6.5.87'
빌드 파일에서 문제가되는 항목을 안전하게 제거하고 정리하고 다시 빌드 할 수 있습니다 (필요한 경우 반복).
답변
종속성 버전을 확인하십시오. 호환되는 버전이 특히 com.google 패키지에주의를 기울여야하며 다음과 같은 동일한 버전이 있어야합니다.
compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.google.android.gms:play-services-maps:8.3.0'
둘 다 8.3.0이며 다른 버전을 컴파일하면 해당 예외가 발생합니다.
답변
종속성에서 Jar 파일을 간단히 제거하십시오. gardle.project를 v7로하고 프로젝트를 실행하십시오.