解決android studio編譯問題
問題一:
描述:
Execution failed for task ':alpha1s:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException:Process
'command 'C:\Program Files\Java\jdk1.8.0_73\bin\java.exe'' finished with non-zero exit value 2
解決:在主工程的build.gradle中
android {
compileSdkVersion 20
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.ubt.alpha1s"
minSdkVersion 14
targetSdkVersion 22
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
問題二:
描述:
Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException:
Duplicate files copied in APK META-INF/LE-832C0.SF
File1: E:\Users\Yu Yong\AndroidStudioProjects\MyApplication\app\libs\neurotec-devices-fscanners-suprema-biomini-android.jar
File2: E:\Users\Yu Yong\AndroidStudioProjects\MyApplication\app\libs\neurotec-biometrics-android.jar
...
這個問題之所以出現是因為專案引用的眾多jar包裡面有重複的檔案,例如上面例子中的META-INF/LE-832C0.SF 解決:在 出現問題的Model --> gradle檔案 --> android語句塊內 加上packagingOptions {
exclude 'META-INF/LE-832C0.SF'}