Android java.exe, sıfır olmayan çıkış değeri 1 ile tamamlandı [kapalı]


117

Benzerlerine bakmayı denedim ve hiçbir çözüm işe yaramadı. Daha önce uygulamaları sorunsuz çalıştırdım ancak yeni uygulamam birdenbire sorun çıkarmaya başladı. Çalıştırmaya çalıştığımda her zaman başarısız oluyor:

Error:Execution failed for task ':app:preDexDebug'.
com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files (x86)\Java\jdk1.7.0_67\bin\java.exe'' finished with non-zero exit value 1

Konsolun görüntülediği şey:

Executing tasks: [:app:assembleDebug]

Configuration on demand is an incubating feature.
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:compileDebugNdk UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportSupportV42200Library UP-TO-DATE
:app:prepareDebugDependencies
:app:compileDebugAidl UP-TO-DATE
:app:compileDebugRenderscript UP-TO-DATE
:app:generateDebugBuildConfig UP-TO-DATE
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets UP-TO-DATE
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources UP-TO-DATE
:app:mergeDebugResources UP-TO-DATE
:app:processDebugManifest UP-TO-DATE
:app:processDebugResources UP-TO-DATE
:app:generateDebugSources UP-TO-DATE
:app:compileDebugJava UP-TO-DATE
:app:preDexDebug
AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual        Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}

AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}


FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:preDexDebug'.
com.android.ide.common.process.ProcessException:     org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files (x86)\Java\jdk1.7.0_67\bin\java.exe'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 2.614 secs

AGPBI: {"kind":"SIMPLE","text":"Error: Could not create the Java Virtual Machine.","position":{},"original":"Error: Could not create the Java Virtual Machine."}
AGPBI: {"kind":"SIMPLE","text":"Error: A fatal exception has occurred. Program will exit.","position":{},"original":"Error: A fatal exception has occurred. Program will exit."}

Bu uygulama çok basit ve ben stok düzeninden pek değiştirmedim. Yalnızca lolipop için tasarlanmıştır ve yalnızca stok özelliklerini kullanır. İşte build.gradle:

apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.0"

defaultConfig {
    applicationId "com.package.app"
    minSdkVersion 21
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:22.0.0'
}

Bunun, uygulamanızı çalıştırmayla değil, uygulamanızı oluşturmayla ilgili bir sorun olduğunu unutmayın - ancak çalıştırmadan önce bir noktada başarılı bir şekilde oluşturmayı başarmanız gerekir.
Chris Stratton

@Rand, herhangi bir çözüm buldunuz mu? Aynı sorunla karşılaşıyorum, 32 bit yapılandırmam var, sanırım sorun bu.
Narendrasinh Dodiya

Bu hata oldukça can sıkıcı ve hiçbir şey yardımcı olmuyor gibi görünüyor -.-
Martin Pfeffer

Layout.xml dosyanızı arayın ve bulun android:shadowRadius="4dp" ve silin.
meyasir

Yanıtlar:


56

Çakışan çekilebilir kaynaklardan kaynaklanan aynı hatayla karşılaşıldı. Temiz bir proje yaptım ve artık hatayla karşılaşılmadı.


bu benim için çalıştı. 2'den çıkış hatası
hadi

1
Wh00t, çok basit! 1'den çıkış hatası aldım .. Git aracılığıyla takım arasında biraz karışıklık olmalı
Sindri Þór

SindriÞór gibi ben de 1 çıkış hatası aldım ve bu benim için çözdü. Son saat baş ağrısından başka bir şey değildi, teşekkürler @Kennth!
davewoodhall

1
@Kenneth çalışmıyor ..!
user5716019

bu benim için
çalışmıyor

16

Çok fazla sörf yaptıktan sonra, sorunun GC ek yükü (bellek yetersiz) olduğunu öğrendim. Build.gradle'a aşağıdaki kodu ekleyerek günümü kurtardım.

android {

    dexOptions {
        incremental = true;
        preDexLibraries = false
        javaMaxHeapSize "4g" // 2g should be also OK
    }

}

başvuru - ProcessException: org.gradle.process.internal.ExecException sıfır olmayan çıkış değeri 2 ile tamamlandı


Nedir g? Gigabayt?
2016

@Subby Sadece dex işlemi için bir Java Sanal Makinesi (JVM) için maksimum bellek ayırma havuzunu belirtmek için bir seçenektir. ref - stackoverflow.com/questions/33750404/…
Duke1992

2
DexOptions.incrementalartık kullanılmıyor ve 2018 sonunda kaldırılacak
HendraWD

13

Java yüklememde bir sorun olmuş olmalı. Java (C: // program dosyaları / Java / jdk) ve jre klasörlerinin tüm izlerini kaldırdım ve resmi sayfadan yeniden yükledim ve şimdi iyi çalışıyor.


1
Bunu nasıl yaptın Lütfen daha fazla ayrıntı sağlayın
Sami Eltamawy

1
Kontrol paneline gidin ve tüm Java sürümlerini kaldırın. Ardından en yenisini yeniden yükleyin.
Rand

1
benim için çalışmadı ..
Alex Kapustian

Java izlerini kaldırmak için "JavaRa" yı deneyebilirsiniz. Yine de yardımcı olup olmadığından emin değilim.
android geliştiricisi

Birden fazla JDK yüklemeniz durumunda (herhangi bir nedenle), stüdyonun doğru olanı kullandığından emin olun: stackoverflow.com/a/30631386/1544046
JCricket

12

Belki buildToolsVersion numaranızı değiştirebilirsiniz.

Bu benim sorunum:

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'D:\ProgramTools\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1

build.gradle'ım:

android {
    compileSdkVersion 23
    buildToolsVersion "24.0.0"

    defaultConfig {
        applicationId "com.pioneers.recyclerviewitemanimation"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

Sadece buildToolsVersion'ı buildToolsVersion "23.0.2" olarak değiştirdim ve sorun çözüldü.


Bu da benim çözümümdü, sadece eski bir projeyi kontrol ettim ve build.gradle'ı karşılaştırdım ve aynı buildToolsVersion "23.0.1" değerine ayarladım
Youri

benim için çalıştı .... :-) problem, yeni proje oluşturduğum zamandı.
Rumit Patel

11

RAM sorunu . Mesajlar Gradle Build'ta benzer bir mesaj aldım

Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal. 
ExecException: Process 'command 'C:\Program Files\Java\jdk1.8.0_45\bin\java.exe'' 
finished with non-zero exit value 1

Neden: İşletim sistemi Windows 8.1 ile dizüstü bilgisayarımda boş RAM yoktu.

Çözüm: İhtiyacım olmayan birkaç programı kapattım. Daha sonra daha fazla boş RAM'im vardı ve projem android stüdyosunda inşa edildi.


1
evet, hatadan önce bir iletişim kutusu gösteriliyor "yeterince hatırlanmıyor ..." mesajını hatırlamıyorum
vuhung3990

8

Benim durumumda çözüm, Android Studio'yu kapatmak ve çok büyük (1.2 GB) olan java işlemlerini sonlandırmaktı. Bundan sonra projem normal şekilde çalışıyor (OS X Mount Lion, Android Studio 1.2.2, iMac Mid 2011 4GB Ram).


Bunu düşünmemiştim bile. Benim için çalıştı. AS'yi yeniden başlatmak (4 kez gibi) hiçbir şey yapmadı.
gatlingxyz

Teşekkürler! Büyüleyici çalıştı.
jackcar

Mac giriş bilgilerimi kilitledi (tam bir yeniden başlatma değil). Tekrar giriş yaptığınızda, çalışan tüm uygulamalar Java sürecini garip bir zombi durumuna sokarak yeniden başlatıldı (en iyi tahminim). Java işleminin etkinlik yöneticisinde öldürülmesi sorunu çözdü. Teşekkürler!
andymeadows

Teşekkürler! Çözüm, Android Studio'yu kapatmaktır.
pengguang001

7

Çözüm

1. Sadece projeyi temizleyin ve çalışıp çalışmadığını kontrol edin

2. Tüm çöp görevlerini kapattıktan sonra android stüdyosunu yeniden başlatın

3. Yukarıdaki her iki şey de çalışmıyorsa bunu gradle.build dosyasına ekleyin

android {

    dexOptions {
        incremental = true;
        preDexLibraries = false
        javaMaxHeapSize "4g" 
    }

}

güzel ve 3 tanesi çalışıyor.
Surendar D

6

Kütüphane icepick'i gradle bağımlılıklarıma ekledikten sonra da aynı sorunu yaşadım . Bağımlılığı kaldırdıktan sonra her şey yolunda görünüyor. Bu sorunun neden ortaya çıktığını öğrenir öğrenmez buraya tekrar yazacağım


4
Burada aynı. Düzeltme kullanmaktı providedyerine compileilişkin processorbağımlılık. Bu bileti görün .
theblang

5

Seçeneği assembleandroidtestaşağıdaki resimde olduğu gibi kullanın . Böylece meydana gelen hata hakkında daha fazla bilgi edinebilirsiniz:

görüntü açıklamasını buraya girin


Güzel çözüm !!! kesin sorunu bulmak için !!!
Ranjith Kumar

Teşekkürler, Mükemmel
Prinkal Kumar

3

Bir projenin lib klasörüne bir jar dosyası ekledikten sonra ve bunu build.gradle dosyasına compile 'yol örneği' olarak ekledikten sonra, gradle'ı senkronize ettiğinizde derleme dosyaları olarak ek bir satır ekler ('libs / example.jar') . Sadece daha önce build.gradle dosyasına eklediğiniz satırı, yani gradle senkronizasyonundan sonra derleme 'yolu örneğini' kaldırmanız gerekir. Ayrıca compile fileTree satırını da kaldırmanız gerekir (dir: 'libs', şunları içerir: '* .jar')


Sizin durumunuzda sadece compile fileTree satırını kaldırın (dir: 'libs', şunları içerir: ['* .jar']). Umarım sizin için iyi çalışır.
Punit Sharma

Bu benim için de çalıştı. Bunun benim için neden bu kadar zor olduğunu bilmiyorum iOS bağımlılık eklemek ve bunları yönetmek çok daha basit.
JMStudios.jrichardson

3
compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

bunu gradle Yapınıza ekleyin. Benim için çalıştı


2
bu benim için çalışmıyor
letsdev-cwack

@ letsdev-cwack aynı sorunu yaşadın mı?
Ashok Varma

3

Benim için cevap, oluşturma sürecine belleği boşaltmak, programlamayı kapatmak veya makineyi yeniden başlatmaktı (win10, hafızayı win7'den daha kötü yönetiyor gibi görünüyor)

Neden benim için düzeltildi?

Oluşturma sırasında, android stüdyo derlemek için yeterli bellek bulamaz, ancak herhangi bir hata göstermez . : App: preDexDebug hatası, derlenmiş uygulamayı telefona yüklemeye çalıştığımda oluştu.

Bazen bu noktadan geçebiliyordum (uygulama yok: preDexDebug hatası), ancak uygulamayı android üzerinde çalıştırırken "ClassNotFound" istisnaları aldım. Bu, Android stüdyosunun bellek yetersizliğinden dolayı derleme sırasında tüm dosyalarımı derlemediğini keşfetmenin ipucuydu (win10, derleme sırasında bellek tasarrufu için android stüdyosunu kapatmamı istedi), IDE bana yapının başarılı olduğunu göstermesine rağmen .


Bu daha çok istisnalarla ilgili bir soruya veya bir cevaptan çok bir yoruma benzer. Bu bir cevapsa, lütfen bahsettiğiniz tüm istisnaları nasıl düzelttiğinizi belirtin, eğer bu yeni bir soruysa, daha önce aldığınız soru hakkında yeni bir soru sorun.
Ram

Geri bildirim için teşekkür ederim, kendimi netleştirmeye çalıştım. İngilizcede ustalaşmıyorum, ancak bu problemde birkaç saat geçirdim ve benim için işe yarayan şeyi göndermeye karar verdim. ;-)
Fabio de Toledo

3

Projeyi temizlemek ve yeniden inşa etmek benim için çalışıyor. Android stüdyosunda:

Build -> Clean Project 
Build -> Rebuild Project

Bağlantıya bakın


1
benim için çalışmıyor :(
Kairi San

1

Komut satırındaki hatadan komut dosyasını çalıştırmayı deneyene kadar neredeyse her şeyi denedim:

dx.bat -JXmx1536m --dex --output \build\intermediates\pre-dexed\debug\classes-01b5c6cd66151f573da9773c18af55d10736a24e.jar build\intermediates\exploded-aar\aaa-release\classes.jar
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Sonra geliştiricinin bellek ayarını gradle komut dosyasında yorumladım:

//        javaMaxHeapSize "1536m"

ve bu hatayı geçmeyi başardım. Dizüstü bilgisayarımda RAM'i artırmam gerekiyor.


javaMaxHeapSize'ı nasıl ayarladınız? Bunu gradle.properties kullanarak ayarladım, ancak yalnızca gradle daemon için çalışıyor.
Sarowar

1
javaMaxHeapSize, altındaki bir özelliktir android.dexOptions. 16GB ram ile bir Win10 kurulumunda kendim 3 gb'de vardı. 1'e
düşürmek

Evet, ayrıca yeterince garip bir şekilde projemde 3gb'den 1gb'ye düşürmek işe yaradı. Bol miktarda RAM'im var çok çok garip.
zaifrun

1

SDK Yöneticisindeki tüm blokları (Destek Kitaplığı, vb.), Tüm güncellenmemiş kitaplıkları ve paketleri güncellemelisiniz. Bundan sonra gradle dosyalarını projeyle senkronize etmeli ve sevinmelisiniz!


1

Benim durumumda Java Max Heap Size'ı 2g'den 1g'ye ayarlamak işe yaradı.

Uygulama modülünün build.gradle dosyasına aşağıdakileri ekleyin

android {
    dexOptions {
        javaMaxHeapSize "1g"
    }
}

1

Bu çözüm benim için çalışıyor

Java JDK 8'i yükleyin.

Ardından, Java 7 yerine Java 8'i almak için Araçlar-> Seçenekler -> Apache Cordova için Araçlar-> Ortam Değişkeni Geçersiz Kılma Araçları'na gidin ve JDK'nızın yolunu "C: \ Program Files \ java \ jdk1.8.0_121" olarak ayarlayın.

daha fazla bilgi için http://www.developersite.org/103-141954-android


1

Deneysel yol buldum:

Uygulama MultiDexApplication'ı değil Uygulamayı genişletir

ve kaldır

org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

gradle.properties'ten


0

Android Studio'da projemi dizüstü bilgisayarımdan masaüstüme aktardıktan sonra bu hatayı aldım.

Çözümüm Android Studio'yu yeniden başlatmak, ardından projeyi temizlemek ve sonunda projeyi yürütmekti.


0

Aynı sorunu yaşadım, buradaki cevapların her birini denedikten sonra, yeniden adlandırdığım bir paketin, onu içe aktaran bir sınıfta yeniden adlandırılmadığını fark ettim. İsmi düzelttim ve hemen sorunu çözdüm.


0

Bunun nedeni muhtemelen uygulamanızın 65.000 yöntem sayısını aşması ve dolayısıyla bir dex hatasına neden olmasıdır. Uygulamanızda multidexing'i etkinleştirmek dışında bir çözüm yok.


0

Bununla bağlantılı birçok sorun olabilir. Öncelikle, bazı dosya yerleşimlerini bozup bozmadığınızı kontrol edin. örneğin, xml olmayan bir dosyayı anim klasörüne yerleştirdim, buna izin verilmiyor. Öyleyse bu tür şeylerin size de gelip gelmediğini kontrol edin.


0

Multidexing'i etkinleştirdiniz mi? MultiDexApplication ile ana Uygulama sınıfınızı genişletin. Hatadan önce ek istisna mesajım var. Bunlar aşağıdaki gibidir.

Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC overhead limit exceeded

Uncaught translation error: java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Java heap space
2 errors; aborting

Bu, hatanın yetersiz bellek nedeniyle oluştuğunu açıkça gösterir. Takip etmeyi dene:

  1. MultiDexApplication ile ana Uygulama sınıfınızı genişletin.
  2. kullanılmayan uygulamaları arka plandan kapatın ve Android Studio'yu yeniden başlatın.

Bu hile yapacak;)


0

Bu anneye bir şans verin:

 dependencies {
        classpath 'com.android.tools.build:gradle:1.4.0-beta6'
    }

İmi unutmayın bu .


0

Şu anda da aynı sorunu yaşadım ve hatalı bir attrs.xml modüllerimden birindeki dosyadan . Dosyanın başlangıçta özel görünümlerimden biri için iki biçimlendirilebilir özelliği vardı, ancak artık ihtiyacım kalmadığı ortaya çıktığında birini silmiştim. Görünüşe göre bu, IDE ile doğru şekilde kaydedilmedi ve bu nedenle, özniteliği bulamayınca yapı başarısız oldu.

Benim için çözüm, özniteliği yeniden eklemek, clean projectardından derleme başarılı oldu ve özniteliği daha fazla sorun yaşamadan başarıyla kaldırabilmekti.

Umarım bu birine yardımcı olur.


0

Yol açan birçok sebep var

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: İşlem 'komutu' C: \ Program Files \ Java \ jdk1.8.0_60 \ bin \ java.exe '' sıfır olmayan çıkış değeri 1 ile tamamlandı

Dex sınırına ulaşmıyorsanız ancak buna benzer bir hata alıyorsanız Error:com.android.dx.cf.iface.ParseException: name already added: string{"a"}

Proguard'ı devre dışı bırakmayı deneyin, sorun olmadan derlemeyi başarırsa, hangi kitaplığın buna neden olduğunu bulmanız ve proguard-rules.prodosyaya eklemeniz gerekir.

Benim durumumda bu sorun güncellendiğimde compile 'com.google.android.gms:play-services-ads:8.3.0'ortaya çıkıyorcompile 'com.google.android.gms:play-services-ads:8.4.0'

Geçici çözümlerden biri bunu proguard-rules.prodosyaya ekledim

## Google AdMob specific rules ##
## https://developers.google.com/admob/android/quick-start ##

-keep public class com.google.ads.** {
   public *;
}

Android Studio


0

Bu sorunu şaka yolu ile çözüyorum. İsimleri olan iki sınıfım var startDlve StartDl. Sadece birini değiştirdim StartDownloadve sorunum çözüldü. ayrıca kaynaklar, projedeki artık kaynakla zaten ayrılmış bir ada sahip olabilir. sadece benzer isimleri farklı olarak yeniden adlandırın.


-1

Tek yapmanız gereken, çalışan işlemin bir kısmını öldürmek ve Belleğinizdeki (RAM) alanı boşaltmaktır. Yüksek bellek tüketen programlardan bazılarını kapatmayı deneyebilirsiniz. Android Studio'yu yeniden başlatmayı da deneyebilirsiniz. Benim için çalıştı.


-2

Satırı kaldırın:

('com.android.support:support-v4:22.0.0')

Bağımlılıklardan (giriş build.gradle):

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v4:22.0.0'
}

12
Ve neden işe yarayacağını düşünüyorsunuz, lütfen açıklayın ki
Aman Alam

-2

Benim için bu işe yarıyor:

defaultConfig {
    multiDexEnabled true
}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.