Facebookの依存関係を追加するまで、私のプロジェクトは正常に機能していました。このエラーが発生し始めました。多くの質問を読みましたが、問題はMultiDex
に関連しているようです。しかし、私にとっては解決策はありませんでした
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.Android.build.api.transform.TransformException:
com.Android.ide.common.process.ProcessException:
org.gradle.process.internal.ExecException: Process 'command
'/usr/lib/jvm/Java-7-openjdk-AMD64/bin/Java'' finished with non-zero exit value 1
追加したものを削除した後でも、それはまだ表示され、gradleは通常よりも構築中に多くの時間がかかるようです
ここに私のbuild.gradleがあります
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "net.ciblo.spectrodraft"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
repositories {
mavenCentral()
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
}
compile 'com.facebook.Android:facebook-Android-sdk:[4,5)'
compile 'com.Android.support:multidex:1.0.1'
compile 'com.Android.support:appcompat-v7:23.2.1'
compile 'com.Android.support:cardview-v7:23.2.1'
compile 'com.Android.support:design:23.2.1'
compile 'com.daimajia.easing:library:1.0.1@aar'
compile 'com.daimajia.androidanimations:library:1.1.3@aar'
compile 'com.google.Android.gms:play-services:8.4.0'
compile 'com.mcxiaoke.volley:library-aar:1.0.0'
compile 'com.pnikosis:materialish-progress:1.5'
compile 'com.nineoldandroids:library:2.4.+'
compile 'com.michaelpardo:activeandroid:3.1.0-SNAPSHOT'
compile 'com.Android.support:support-v4:23.2.1'
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
}
次のコードをbuild.gradle
appモジュールに追加すると、問題が解決しました
Android{
defaultConfig {
// Enabling multidex support.
multiDexEnabled true
}
dexOptions {
javaMaxHeapSize "4g"
}
}
dependencies {
//...
compile 'com.Android.support:multidex:1.0.0'
}
google PlayサービスAPIをアプリに選択的にコンパイルできます。たとえば、Google FitとAndroid Wear APIのみを含めるには、build.gradleファイルの次の行を置き換えます。
compile 'com.google.Android.gms:play-services:8.4.0'
これらの行で:
compile 'com.google.Android.gms:play-services-fitness:8.4.0'
compile 'com.google.Android.gms:play-services-wearable:8.4.0'
==>アプリ内のメソッドの数(フレームワークAPI、ライブラリメソッド、独自のコードを含む)を65,536の制限内に保つため。
Build.gradleに以下を追加すると、問題が修正され、
Android {
//...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
//...
}
この恐ろしい繰り返しの問題は最近私に直撃しました。 gradleビルドはapp:transformClassesWithDexForDebugで恒久的に停止し、数時間実行するだけで完了しません。今回は、Crashlyticsの新しいレイヤーである「fabric」へのすべての参照を削除することで修正しました。
//apply plugin: 'io.fabric' //REMOVE
//classpath 'io.fabric.tools:gradle:1.26.1' //REMOVE