Birden fazla dex dosyaları Landroid/destek/v4/accessibilityservice/define AccessibilityServiceİnfoCompat
Eğer gradle assembleDebug
komut satırından çalıştırırsanız, aniden bu hatayı alıyorum:
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.util.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:592)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:550)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:531)
at com.android.dx.merge.DexMerger.mergeDexBuffers(DexMerger.java:168)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:186)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:300)
at com.android.dx.command.dexer.Main.run(Main.java:232)
at com.android.dx.command.dexer.Main.main(Main.java:174)
at com.android.dx.command.Main.main(Main.java:91)
Eğer v4 için grep eğer inşa benim klasörün içinde iki dosya görüyorum.
Binary file build/pre-dexed/debug/support-v4-19.0.0-2ba5fdd60a6c3836b3104a863fe42897da1fa9d1.jar matches
Binary file build/pre-dexed/debug/support-v4-r7-227d905d79b23b20866531d4f700446c040a2ccb.jar matches
Gradle dosyası sadece bu destek kitaplığı içerir:
compile 'com.android.support:support-v13:19.0.0'
R7 kitaplık bir şekilde dahil olduğunu nasıl tıkandım. gradle clean
koştum ve her zaman assembleDebug ben yeniden ne zaman orada görünür.
Eğer inşa dizini içindeki r7 için grep, dosyanın içinde bunu görüyorum
Binary file build/exploded-bundles/ComGoogleAndroidGmsPlayServices4030.aar/classes.jar matches
Eğer v13, sonra yer yok diye başka şeyler hazırlamıyorsun.
Ama v13 v4 destek kütüphane vardır değil mi?
Bu oyun hizmetleri AAR paket ve v13 kütüphane arasında bir uyumsuzluk var mı?
Gradleplease.appspot.com gelen gradle dosyasını aldım.
Oyun hizmetleri kaldırılıyor; aynı hatayı düzeltmez.
Benim bağımlılıkları içinde inşa.gradle:
dependencies {
// Google Play Services
//compile 'com.google.android.gms:play-services:4.0.30'
// Support Libraries
//compile 'com.android.support:support-v4:19.0.0'
///compile 'com.android.support:appcompat-v7:19.0.0'
//compile 'com.android.support:gridlayout-v7:19.0.0'
compile 'com.android.support:support-v13:19.0.0'
compile 'org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5'
compile 'commons-codec:commons-codec:1.9'
compile 'com.madgag:markdownj-core:0.4.1'
compile 'com.wu-man:android-oauth-client:0.0.2'
compile 'com.google.http-client:google-http-client-jackson2:1.17.0-rc'
compile 'org.apache.commons:commons-lang3:3.2'
compile 'com.google.code.gson:gson:2.2.4'
}
CEVAP
Çalıştırıngradle -q dependencies
(yagradle -q :projectName:dependencies
) bağımlılık bir rapor oluşturmak için. r7
nereden geldiğini görmek gerekir:
compile - Classpath for compiling the main sources.
--- com.commonsware.cwac:camera-v9:0.5.4
| --- com.actionbarsherlock:actionbarsherlock:4.4.0
| | \--- com.google.android:support-v4:r7
| --- com.commonsware.cwac:camera:0.5.4
| \--- com.android.support:support-v4:18.0. -> 18.0.0
\--- com.android.support:support-v4:18.0. -> 18.0.0
O zaman, bu bağımlılığı engellemek için exclude
yönergesini kullanın. Benim durumumda, CWAC-Kamera benim kütüphaneden geliyor, ve ben kullanın:
dependencies {
compile('com.commonsware.cwac:camera-v9:0.5.4') {
exclude module: 'support-v4'
}
compile 'com.android.support:support-v4:18.0. '
}
compile
ikinci ifade gerçekten istediğini gösterir)
Eğer bağımlılık raporu yeniden çalıştırın göreceğiniz gibi konulara açıklık olmalıdır:
compile - Classpath for compiling the main sources.
--- com.commonsware.cwac:camera-v9:0.5.4
| --- com.actionbarsherlock:actionbarsherlock:4.4.0
| \--- com.commonsware.cwac:camera:0.5.4
\--- com.android.support:support-v4:18.0. -> 18.0.0
Birden fazla js dosyaları jQuery kulla...
Nasıl birden fazla çalıştırmak için .B...
Birden fazla proje içinde birden çok ö...
tek bir pdf içine birden fazla pdf dos...
Nasıl Git deposu, birden fazla silinmi...