ライブラリの重複
- 現象:ログにて以下のエラー(一部省略)が発生
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2
- 理由:取り込み済みライブラリが外部モジュールにも使用されていた
/libsディレクトリに「android-support-v4.jar」を置いていたが、
導入した外部モジュールであるdrag-sort-listview内にも同ファイルが存在していたため怒られていた。
(おかげで半日程はまった…)
- 解決:build.gradleを修正
build.gradle内のライブラリ記載箇所を修正
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) // compile 'asia.ivity.android:drag-sort-listview:1.0' と記載していたのを下記に修正 compile ('asia.ivity.android:drag-sort-listview:1.0'){ exclude module: 'support-v4' } }