2015-09-13 26 views
20

Dostaję ten dziwny błąd przez całą dzisiejszą noc - czy ktoś wie, co tu jest nie tak?Android Studios RuntimeException: nieoczekiwany wyjątek w wątku pisarzy dex

O ile wiem, zostały prawidłowo przy użyciu biblioteki multidex (poniżej jest z pliku app.gradle):

defaultConfig { 
    applicationId "com.example.simon" 
    minSdkVersion 14 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    /*Enabling multidex*/ 
    multiDexEnabled true 
} 

dependencies { 
    /* Enabling multidex*/ 
    compile 'com.android.support:multidex:1.0.1' 
} 

Moja najwyższym poziomie Gradle plik jest bardzo prosty:

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:1.3.0' 
     classpath 'com.google.gms:google-services:1.3.1' 
     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

błąd:

Executing tasks: [:app:generateDebugSources, 
:app:generateDebugAndroidTestSources] 

Parallel execution with configuration on demand is an incubating 
feature. 
:app:preBuild UP-TO-DATE 
:app:preDebugBuild UP-TO-DATE 
:app:checkDebugManifest 
:app:preReleaseBuild UP-TO-DATE 
:app:prepareComAndroidSupportAppcompatV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportCardviewV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportDesign2301Library UP-TO-DATE 
:app:prepareComAndroidSupportMultidex101Library UP-TO-DATE 
:app:prepareComAndroidSupportPaletteV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportRecyclerviewV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportV42301Library UP-TO-DATE 
:app:prepareComDigitsSdkAndroidDigits162Library UP-TO-DATE 
:app:prepareComFacebookAndroidFacebookAndroidSdk440Library UP-TO-DATE 
:app:prepareComFacebookConcealConceal101Library UP-TO-DATE 
:app:prepareComGithubCurioustechizenAndroidAgoLibrary130Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesAppinvite780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesBase780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesGcm780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesLocation780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesMaps780Library UP-TO-DATE 
:app:prepareComTheartofdevEdmodoAndroidImageCropper104Library UP-TO-DATE 
:app:prepareComTwitterSdkAndroidTweetComposer080Library UP-TO-DATE 
:app:prepareComTwitterSdkAndroidTweetUi131Library UP-TO-DATE 
:app:prepareComTwitterSdkAndroidTwitter161Library UP-TO-DATE 
:app:prepareComTwitterSdkAndroidTwitterCore141Library UP-TO-DATE 
:app:prepareIoFabricSdkAndroidFabric134Library 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:processDebugGoogleServices 
:app:generateDebugResources 
:app:mergeDebugResources UP-TO-DATE 
:app:processDebugManifest UP-TO-DATE 
:app:fabricGenerateResourcesDebug 
:app:processDebugResources 
:app:generateDebugSources 
:app:preDebugAndroidTestBuild UP-TO-DATE 
:app:prepareDebugAndroidTestDependencies 
:app:compileDebugAndroidTestAidl UP-TO-DATE 
:app:processDebugAndroidTestManifest UP-TO-DATE 
:app:compileDebugAndroidTestRenderscript UP-TO-DATE 
:app:generateDebugAndroidTestBuildConfig UP-TO-DATE 
:app:generateDebugAndroidTestAssets UP-TO-DATE 
:app:mergeDebugAndroidTestAssets UP-TO-DATE 
:app:generateDebugAndroidTestResValues UP-TO-DATE 
:app:generateDebugAndroidTestResources UP-TO-DATE 
:app:mergeDebugAndroidTestResources UP-TO-DATE 
:app:processDebugAndroidTestResources UP-TO-DATE 
:app:generateDebugAndroidTestSources UP-TO-DATE 

BUILD SUCCESSFUL 

Total time: 3.913 secs Executing tasks: [:app:assembleDebug] 

Parallel execution with configuration on demand is an incubating 
feature. 
:app:preBuild UP-TO-DATE 
:app:preDebugBuild UP-TO-DATE 
:app:checkDebugManifest 
:app:preReleaseBuild UP-TO-DATE 
:app:prepareComAndroidSupportAppcompatV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportCardviewV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportDesign2301Library UP-TO-DATE 
:app:prepareComAndroidSupportMultidex101Library UP-TO-DATE 
:app:prepareComAndroidSupportPaletteV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportRecyclerviewV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportV42301Library UP-TO-DATE 
:app:prepareComDigitsSdkAndroidDigits162Library UP-TO-DATE 
:app:prepareComFacebookAndroidFacebookAndroidSdk440Library UP-TO-DATE 
:app:prepareComGithubCurioustechizenAndroidAgoLibrary130Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesAppinvite780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesBase780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesGcm780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesLocation780Library UP-TO-DATE 
:app:prepareComGoogleAndroidGmsPlayServicesMaps780Library UP-TO-DATE 
:app:prepareComTheartofdevEdmodoAndroidImageCropper104Library 
: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:processDebugGoogleServices 
:app:generateDebugResources 
:app:mergeDebugResources UP-TO-DATE 
:app:processDebugManifest UP-TO-DATE 
:app:fabricGenerateResourcesDebug 
:app:processDebugResources 
:app:generateDebugSources 
:app:processDebugJavaRes UP-TO-DATE 
:app:compileDebugJavaWithJavac UP-TO-DATE 
:app:compileDebugNdk UP-TO-DATE 
:app:compileDebugSources UP-TO-DATE 
:app:collectDebugMultiDexComponents UP-TO-DATE 
:app:packageAllDebugClassesForMultiDex UP-TO-DATE 
:app:shrinkDebugMultiDexComponents UP-TO-DATE 
:app:createDebugMainDexClassList UP-TO-DATE 
:app:dexDebugExecuting 
tasks: [:app:assembleDebug] 

Parallel execution with configuration on demand is an incubating 
feature. 
:app:preBuild UP-TO-DATE 
:app:preDebugBuild UP-TO-DATE 
:app:checkDebugManifest 
:app:preReleaseBuild UP-TO-DATE 
:app:prepareComAndroidSupportAppcompatV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportCardviewV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportDesign2301Library UP-TO-DATE 
:app:prepareComAndroidSupportMultidex101Library UP-TO-DATE 
:app:prepareComAndroidSupportPaletteV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportRecyclerviewV72301Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportV42301Library UP-TO-DATE 
:app:prepareComDigitsSdkAndroidDigits162Library 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:processDebugGoogleServices 
:app:generateDebugResources 
:app:mergeDebugResources UP-TO-DATE 
:app:processDebugManifest UP-TO-DATE 
:app:fabricGenerateResourcesDebug 
:app:processDebugResources 
:app:generateDebugSources 
:app:processDebugJavaRes UP-TO-DATE 
:app:compileDebugJavaWithJavac UP-TO-DATE 
:app:compileDebugNdk UP-TO-DATE 
:app:compileDebugSources UP-TO-DATE 
:app:collectDebugMultiDexComponents UP-TO-DATE 
:app:packageAllDebugClassesForMultiDex UP-TO-DATE 
:app:shrinkDebugMultiDexComponents UP-TO-DATE 
:app:createDebugMainDexClassList UP-TO-DATE 
:app:dexDebug AGPBI: 
{"kind":"simple","text":"UNEXPECTED TOP-LEVEL 
EXCEPTION:","sources":[{}]} AGPBI: 
{"kind":"simple","text":"java.lang.RuntimeException: Unexpected 
exception in dex writer thread","sources":[{}]} AGPBI: 
{"kind":"simple","text":"\tat 
com.android.dx.command.dexer.Main.runMultiDex(Main.java:397)","sources":[{}]} 
AGPBI: {"kind":"simple","text":"\tat 
com.android.dx.command.dexer.Main.run(Main.java:275)","sources":[{}]} 
AGPBI: {"kind":"simple","text":"\tat 
com.android.dx.command.dexer.Main.main(Main.java:245)","sources":[{}]} 
AGPBI: {"kind":"simple","text":"\tat 
com.android.dx.command.Main.main(Main.java:106)","sources":[{}]} 


FAILED 

FAILURE: Build failed with an exception. 

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

* 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: 1 mins 5.426 secs 
+0

Czy próbowali uruchomiony z --info lub --debug dostać więcej informacje? Jeśli nic więcej, możesz spróbować znaleźć i ręcznie uruchomić dokładnie polecenie, które gradle jest uruchomione, aby zobaczyć jego wynik i dlaczego się nie udaje. – JesusFreke

+0

Witam, uruchomię to później dzisiaj i wrócę do Ciebie - przepraszam za powolną odpowiedź. – Simon

Odpowiedz

65

Po googlowania na chwilę, uważam, że problemem było to, że nie wystarczy stertę przydzielono twórcy dex.

Naprawiłem go poprzez wprowadzenie następujących w moim app gradle.build:

android { 
    dexOptions { 
     incremental true 
     javaMaxHeapSize "4g" 
    } 
} 

Ta opcja również udało się przyspieszyć mój Gradle build znacząco.

Extremely long build with Gradle (Android Studio)

+19

Szczegóły: dexOptions {} należy umieścić wewnątrz bloku android {} w build.gradle. – tarkeshwar

+2

'przyrostowy true' wycofany Ale' javaMaxHeapSize "4g" 'działa świetnie! Dziękuję Ci! –

+0

dzięki człowiekowi sterty – Juanca

0

zmiana Twój manifist do tego

defaultConfig 
{ 
    applicationId "com.example.simon" 
    minSdkVersion 14 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    /*Enabling multidex*/ 
    multiDexEnabled true 
} 
android { 
    dexOptions { 
     incremental true 
     javaMaxHeapSize "4g" 
    } 
} 

dependencies { 
    /* Enabling multidex*/ 
     compile 'com.android.support:multidex:1.0.1' 
} 

i tego problemu pokazuje, kiedy należy dodać:

/*Enabling multidex*/ 
    multiDexEnabled true 

większość czasu. i więcej informacji proszę mi powiedzieć dokładnie nic nie zrobił undestand

3

dodanie tego do moich gradle.properties poziomie projektu pomógł -

org.gradle.jvmargs=-Xmx1536m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 
Powiązane problemy