2015-09-22 13 views
5

benim aar-kütüphane (Jayway tarafından android-maven-plugin ile oluşturulmuş bir maven projesi,) kullanmaya çalışıyorum Ben gradle assembleDebug çalıştırdığınızda bir gradle projesinde ama, ben şu istisna yaşıyorum:Android Gradle İstisna: "Birden dex dosyaları tanımlamak", altında sınıfları çoğaltılamaz patlamış-aar

  • :

    UNEXPECTED TOP-LEVEL EXCEPTION: 
    com.android.dex.DexException: Multiple dex files define Lcom/google/android/gms/actions/ItemListIntents; 
    at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596) 
    at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554) 
    at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535) 
    at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) 
    at com.android.dx.merge.DexMerger.merge(DexMerger.java:189) 
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502) 
    at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334) 
    at com.android.dx.command.dexer.Main.run(Main.java:277) 
    at com.android.dx.command.dexer.Main.main(Main.java:245) 
    at com.android.dx.command.Main.main(Main.java:106) 
    

    Projemde bu sınıf ararsanız Android Studio iki sonuç bulursa muayene Running 10

  • ListItemIntents (com.google.android.gms.action) aar-library(classes.jar)

gradle dependencyInsight --dependency play-services-base --configuration compile alıyorum: ListIntentIntents (ve tabii ki, bütün play-hizmet alabilmek:

com.google.android.gms:play-services-base:7.0.0 
+--- com.google.android.gms:play-services-gcm:7.0.0 
| \--- aar-library:core:1.0.10-SNAPSHOT 
|   \--- compile     
+--- com.google.android.gms:play-services-location:7.0.0 
| \--- com.nexse.mobile.betting.core:core:1.0.10-SNAPSHOT (*) 
\--- com.google.android.gms:play-services-maps:7.0.0 
    \--- com.google.android.gms:play-services-location:7.0.0 (*) 

(*) - dependencies omitted (listed previously) 

sorun aar-kütüphaneclasses.jar içindedir baz modül) zaten var! Ne yapmalıyım com.google.android.gms klasörü altında bir tane, bir tane klasör

aar-library altında: Yani

my-gradle-project/app/build/intermediates/exploded-aar/ 

içimde play-hizmetler-baz modülünün iki referansları var? Sen aşağıdaki gibi gradle dosyasında true etkinleştirmek multidex dahil deneyebilirsiniz

cevap

1

Ben suçlu buldum! Ben yeni com.simpligility.maven.plugins hata sabitcom.jayway.maven.plugins.android.generation2

eklentisi eski android maven kullanıyordu.

Her neyse yardım için teşekkürler.

0

:

android { 
compileSdkVersion 22 
buildToolsVersion "23.0.0" 

    defaultConfig { 
     minSdkVersion 14 //lower than 14 doesn't support multidex 
     targetSdkVersion 22 

     // Enabling multidex support. 
     multiDexEnabled true 
    } 
} 
+2

Her şeyden önce cevabınız için teşekkür ederiz. çalışmak için görünmüyor : ': app: packageAllDebugClassesForMultiDex Hata BAŞARISIZ: Yürütme görev için başarısız oldu ': app: packageAllDebugClassesForMultiDex'. > java.util.zip.ZipException: yinelenen giriş: com/google/android/gms/actions/ItemListIntents.class' Ancak, benim app 8 minSdkVersion olarak var, bu yüzden bu yolu izlememeyi tercih ediyorum. –

0

If the number of method references in your app exceeds the 65K limit, your app may fail to compile. You may be able to mitigate this problem when compiling your app by specifying only the specific Google Play services APIs your app uses, instead of all of them.

Üstü ifadeleri https://developers.google.com/android/guides/setup alınır.

İlk: Menü çubuğundaki Build Item (Android Studio'yu) Clean Project üzerine tıklayın.

İkinci: Tekil bağımlılıklar eklemeyi deneyin. Örnek Sadece Konum servislerini kullanmak istiyorsanız, build.gradle numaranıza compile 'com.google.android.gms:play-services-location:7.8.0' ekleyin.

İlgili konular