Ответ 1
Наконец, я решил эту проблему, изменив компиляцию 'com.google.guava: guava: 18.0' для компиляции 'com.google.guava: guava-jdk5: 17.0'
Ошибка: выполнение выполнено для задачи ': app: dexDebug'.
com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: процесс "команда" C:\Program Files\Java\jdk1.8.0_40\bin\java.exe '' завершен с ненулевым значением выхода 2
Я искал все похожие вопросы и решения, но они не помогают. Надеюсь, такие эксперты, как вы, придумали.
Код проекта загружен в битбакет: https://[email protected]/tainule/numad-huizhang.git
У меня есть два модуля, приложение и конечная точка. Ниже приведен модуль: приложение:
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "edu.neu.madcourse.huizhang1"
minSdkVersion 14
targetSdkVersion 21
versionCode 3
versionName "2.1"
// multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile "com.android.support:appcompat-v7:21.0.+"
compile 'com.google.android.gms:play-services:+'
compile 'com.google.guava:guava:18.0'
compile 'com.google.code.gson:gson:1.7.2'
compile 'org.apache.httpcomponents:httpmime:4.4-beta1'
compile 'org.apache.httpcomponents:httpclient:4.4-beta1'
compile 'org.apache.httpcomponents:httpcore:4.4-beta1'
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'
compile project(path: ':endpoint', configuration: 'android-endpoints')
compile files('src/main/res/libs/KeyValueAPI.jar')
}
Ниже конечной точки модуля:
buildscript {
repositories {
mavenLocal()
mavenCentral()
}
dependencies {
classpath 'com.google.appengine:gradle-appengine-plugin:1.9.17'
}
}
repositories {
mavenCentral();
}
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'appengine'
sourceCompatibility = 1.7
targetCompatibility = 1.7
dependencies {
appengineSdk 'com.google.appengine:appengine-java-sdk:1.9.8'
compile 'com.google.appengine:appengine-endpoints:1.9.8'
compile 'com.google.appengine:appengine-endpoints-deps:1.9.8'
compile 'javax.servlet:servlet-api:2.5'
compile 'com.googlecode.objectify:objectify:4.0b3'
compile 'com.ganyo:gcm-server:1.0.2'
// compile 'com.github.fengdai:alertdialogpro-theme-material:0.1.0'
}
appengine {
downloadSdk = true
appcfg {
oauth2 = true
}
endpoints {
getClientLibsOnBuild = true
getDiscoveryDocsOnBuild = true
}
}
Наконец, я решил эту проблему, изменив компиляцию 'com.google.guava: guava: 18.0' для компиляции 'com.google.guava: guava-jdk5: 17.0'
Кажется, у вас есть файл jar или lib, появляющийся несколько раз.
Итак, удалите файл .jar из папки lib, а затем:
Build
> Rebuild
У меня была та же ошибка проблемы, которая показана, я решаю ее, добавляя
defaultConfig {
// Enabling multidex support.
multiDexEnabled true
}
У меня была эта проблема, потому что я превысил ограничение на DeX 65K, введенное Android i, использовало так много библиотек
Я добавляю его, чтобы кто-то в подобной ситуации мог найти это полезным.
Итак, даже после multiDexEnabled = true
я получал ту же ошибку. У меня не было дубликатов библиотек. Ни одно из вышеперечисленных решений не работало. После чтения журнала ошибок я обнаружил, что проблема OutOfMemError
является основной причиной и как-то подумала об изменении heap size
. Следовательно, это -
dexOptions {
preDexLibraries = false
javaMaxHeapSize "4g"
}
Где "4g" означает HeapSize
4 ГБ. И это сработало! Надеюсь, это и для вас.
Для меня у меня было несколько версий одной и той же библиотеки, включенных в /app/libs
. Я использовал Parse, и у меня были как ParseFacebookUtilsV3-1.9.0.jar
, так и ParseFacebookUtilsV4-1.9.0.jar
.
Удаление баннера V3
решает проблему.
Это может вызвать три условия.
gradle repeat содержат, например:
compile fileTree (include: ['*.jar], dir:' libs)
скомпилировать файлы ('libs/xxx.jar)
если вы можете читать китайский язык, читайте здесь Ошибка: выполнение не выполнено для задачи: app: dexDebug '. > com.android.ide.common.process.ProcessException: o
Я столкнулся с тем же самым точным сообщением об ошибке. Я не совсем уверен, что мое решение решит вашу проблему.
В структуре проекта (приложение) я изменил версию SDK компиляции с API 22 на API 21 и изменил версию инструментальных средств с 22.0.0 по 21.1.2.
Когда я загрузил последний API 22 Adroid 5.1, каждый проект, который я создаю, использует этот API и вызывает у меня проблему. Возможно, Android Team ищет исправление для этого.
У меня эта проблема после включения тех же классов дважды
Недавно я перенес один из наших корпоративных проектов из Eclipse в Android Studio.
Мы также получили ошибку ниже при миграции:
Ошибка: выполнение выполнено для задачи ': appName: transformClassesWithDexForDebug'. com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command'/Library/Java/JavaVirtualMachines/jdk1.7.0_79. jdk/Содержание/Главная/bin/java '' завершена с ненулевым значением выхода 2
Чтобы решить эту проблему, нам пришлось сделать несколько вещей:
compile 'com.android.support:support-v4:23' компилировать 'Com.google.android.gms: стыковые услуги: 9.0.0'
to compile 'com.google.android.gms:play-services:9.0.0'
defaultConfig {multiDexEnabled true}
dexOptions { incremental true javaMaxHeapSize "4g" }
Это также может иметь место, когда у вас слишком много ссылок на объекты. Взгляните на результаты сборки, esp в задаче: dex: multiDebug:
Проблема с записью: слишком много ссылок на методы: 67114; max - 65536.
Попробуйте поместить эту строку кода в ваши основные проекты gradle script:
configurations { all*.exclude group: 'com.android.support', module: 'support-v4' }
У меня есть две библиотеки, связанные с моим проектом, и они используют "com.android.support:support-v4:22.0.0".
Надеюсь, что это поможет кому-то.
Я решил эту же проблему, удалив:
compile fileTree(include: ['*.jar'], dir: 'libs')
и добавление для каждого файла jar:
compile files('libs/yourjarfile.jar')
Попробуйте очистить и перестроить проект. У меня был абсолютно такой же вопрос, это решило его.
У меня такая же проблема, и я решил сменить "+" на точное число, например компилировать "com.android.support:appcompat-v7:21.0.+" для компиляции "com.android.support:appcompat- v7: 21.0.0".
Это работает для меня.:)
Я изменил:
compile 'com.google.android.gms:play-services:9.0.0'
compile 'com.google.android.gms:play-services-auth:9.0.0'
to:
compile 'com.google.android.gms:play-services-maps:9.0.0'
compile 'com.google.android.gms:play-services-auth:9.0.0'
Я столкнулся с той же проблемой при преобразовании проекта eclipse в Android-студию. В моем случае у меня был проект lirary jar файл в проекте eclipse, и я добавил то же самое в gradle, вызвавшем ошибку. Я решил ее, удалив jar из libs.
Обновление Gradle помогло мне, я столкнулся с этой проблемой при создании приложения Ionic для Android, сборка прошла успешно, когда я обновил свой Gradle с версии 4.8.1 до 5.1.1 и переустановил платформу Android.