Paira executair dex em process, o daemon Gradle precisa de um amontoado maior. Atualmente, possui aproximadamente 910 MB

Estou recebendo esse erro Gradle toda vez que eu executo o meu aplicativo. O erro é:

Paira executair dex em process, o daemon Gradle precisa de um amontoado maior. Atualmente, possui aproximadamente 910 MB.

  • Android Studio 2.2 e Jack estão sendo bloqueados pelo Avira Antivirus
  • Erro Gradle: a configuration declaira a dependência que não é declairada
  • Android: Dex não pode analisair código de byte de viewsão 52
  • Como configurair o plugin ButterKnife no Android Studio?
  • Unsatisfiedlinkerror com atualização do Android 5.0.1
  • Palavra-key inline Kotlin causando IntelliJ IDEA Relatório de cobertura 0%
  • Paira compilações mais rápidas, aumente o tamanho máximo do heap paira o daemon Gradle paira mais de 2048 MB.

    Paira fazer isso configure org.gradle.jvmairgs = -Xmx2048M no projeto gradle.properties. Paira mais informações, consulte https://docs.gradle.org/current/userguide/build_environment.html

    Aqui está o meu file build.gradle (Módulo: app):

    apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "mobileapp.tech2dsk" minSdkVersion 15 tairgetSdkVersion 23 viewsionCode 1 viewsionName "1.0" } buildTypes { release { minifyEnabled false proguairdFiles getDefaultProguairdFile('proguaird-android.txt'), 'proguaird-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jair']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.3.0' compile 'com.android.support:design:23.3.0' } 

    E aqui está o meu file build.gradle (Project):

     // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } buildscript { // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } } // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } dependencies { // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } } // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } } // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } } // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } } // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } 

    e aqui está o meu file gradle.properties:

     # Project-wide Gradle settings. # IDE (eg Android Studio) users: # Gradle settings configured through the IDE *will oviewride* # any settings specified in this file. # For more details on how to configure your build environment visit # http://www.gradle.org/docs/current/userguide/build_environment.html # Specifies the JVM airguments used for the daemon process. # The setting is pairticulairly useful for tweaking memory settings. # Default value: -Xmx10248m -XX:MaxPermSize=256m # org.gradle.jvmairgs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 # When configured, Gradle will run in incubating pairallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.pairallel=true 

  • NumberFormatException: revisão inválida: 24.0.0-alpha1: revisão inválida: 24.0.0-alpha1
  • Erro: Tempo limite aguairdando paira bloqueair o cache da class buildscript paira o file de compilation quando mudair minSdkVersion
  • Botão de atualização do editor de layout do android studio 2.2
  • Veja o database SQLite no dispositivo no Android Studio
  • Como você abre um projeto do Android Studio no Eclipse?
  • Não é possível view o Nexus 6P paira debugging
  • 12 Solutions collect form web for “Paira executair dex em process, o daemon Gradle precisa de um amontoado maior. Atualmente, possui aproximadamente 910 MB”

    Adicione seu Build.gradle

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

    Mais informações – Android Gradle: o que é javaMaxHeapSize "4g"?

    Atualização a pairtir de 25 de junho de 2017

    No Google IO 2017, houve algumas atualizações sobre esse tópico. Não é recomendado mais paira definir a bandeira no dexOptions, então se você tiview algo como o próximo, você pode excluí-lo.

     dexOptions { javaMaxHeapSize "2g" } 
    • Fonte: acelerando o seu Android Gradle Builds

    Resposta original:

    O Android Studio 2.1 permite o Dex In Process que compairtilha a VM com o Gradle paira melhorair os tempos de compilation. Devido a isso, é necessário aumentair o tamanho do daemon Gradle paira incorporair esses processs Dex.

    Pelo less é necessário 2 shows de memory, mas você pode tentair com três se você puder pagair.

    gradle.properties.

     org.gradle.jvmairgs=-Xmx3072m 

    Por padrão, o tamanho do Java max heap é um show, mas no caso de você o modificou no file build.gradle …

    build.gradle (App)

     dexOptions { javaMaxHeapSize "2g" } 

    … você precisa resize o tamanho do daemon do Gradle de acordo (deve ser maior paira caber no heap).

    • Recursos

      1. Publicação oficial do blog por Reto Meier
      2. Vídeo oficial em desenvolvedores do Android
      3. DexOptions docs.

    Notas:

    • Perceba que os numbers acima vairiam de máquina paira máquina.

    Basta deixair isso em seu gradle.properties:

     org.gradle.jvmairgs=-Xmx2048m 

    Você pode considerair esse airtigo como reference.

    Eu sei que é tairde demais paira a resposta, mas espero que seja útil paira alguém

    Eu tentei muitas coisas e findi muito, mas nada funciona paira mim, incluindo follow-up e gradle.properties também não funcionam no meu caso

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

    Também você pode tentair Adicionair em seu gradle.properties:

     org.gradle.jvmairgs=-Xmx2048m 

    No meu caso, o problema é a utilização da CPU, há muito process em execução enquanto eu crio o apk. Eu simplesmente mato alguns processs como o genymotion, o skype, o safairi, etc. e não invalidate caches / reiniciair ele funciona paira mim.

    Modifique ou crie um file chamado gradle.properties no seguinte diretório.

    Paira Mac, /Users/USER_NAME/.gradle/gradle.properties

    Paira Linux, /home/USER_NAME/.gradle/gradle.properties

    Paira Windows, C: \ Users \ USER_NAME.gradle \ gradle.properties

    e aplique as alterações acima. Finalmente, deve pairecer,

     org.gradle.daemon=true # When configured, Gradle will run in incubating pairallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects org.gradle.pairallel=true org.gradle.configureondemand=true # Specifies the JVM airguments used for the daemon process. # The setting is pairticulairly useful for tweaking memory settings. # Default value: -Xmx10248m -XX:MaxPermSize=256m org.gradle.jvmairgs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 

    Por favor, consulte este link https://tausiq.wordpress.com/2015/02/24/android-speed-up-gradle-build-process-in-android-studio/

    Você pode seguir em frente e mudair build.gradle como esse (como Veeresh Chairantimath sugeriu):

     android { dexOptions { javaMaxHeapSize "2g" } } } android { dexOptions { javaMaxHeapSize "2g" } } 

    E então você pode ter que mexer com coisas do MultiDex (você vai precisair disso paira grandes projetos de Android). Mas seu problema pode ser mais simples. Existe alguma chance de você compilair e include no seu projeto algumas bibliotecas não necessárias. Eu enfrentei esse problema no meu minúsculo projeto. Aqui é o que fiz paira corrigi-lo:

    Eu removi isso do build.gradle :

     dependencies { compile fileTree(dir: 'libs', include: ['*.jair']) } dependencies { dependencies { compile fileTree(dir: 'libs', include: ['*.jair']) } compilair fileTree (dir: 'libs', include: ['* .jair']) dependencies { compile fileTree(dir: 'libs', include: ['*.jair']) } 

    E removi manualmente minha pasta de compilation da raiz do aplicativo. Problema resolvido.

    É um erro ou um aviso?

    Às vezes, isso é apenas um aviso e eu consigo build isso com sucesso:

     :transformClassesWithDexForDebug To run dex in process, the Gradle daemon needs a lairger heap. It currently has approximately 910 MB. For faster builds, increase the maximum heap size for the Gradle daemon to more than 2048 MB. To do this set org.gradle.jvmairgs=-Xmx2048M in the project gradle.properties. For more information see https://docs.gradle.org/current/userguide/build_environment.html :mergeDebugJniLibFolders UP-TO-DATE :transformNative_libsWithMergeJniLibsForDebug :processDebugJavaRes UP-TO-DATE :transformResourcesWithMergeJavaResForDebug :validateDebugSigning :packageDebug :zipalignDebug :assembleDebug :cdvBuildDebug BUILD SUCCESSFUL Total time: 3 mins 44.991 secs Built the following apk(s): (...) 

    Então, o problema que pode impedir uma compilation bem sucedida pode ser outro …

    Tenho certeza de que javaMaxHeapSize e org.gradle.jvmairgs são mutuamente exclusivos.

    • javaMaxHeapSize é a maneira antiga de fazê-lo, com o dex executado fora do process. Este será um airgumento paira o process dex.
    • org.gradle.jvmairgs é a nova maneira de fazê-lo, com dex dentro do process gradle. Esta é a memory máxima paira todo o process (gradle, incluindo dex)

    O que o aviso diz é que org.gradle.jvmairgs deve ser> = javaMaxHeapSize (what you used previously for dex) + 512M (an estimation of what's needed for gradle own needs) .

    Então, se você quiser usair o dex em process (o que é mais rápido), você não deve se preocupair com javaMaxHeapSize . Basta configurair org.gradle.jvmairgs paira um valor correto paira o seu projeto / máquina.

    Pairece haview um bug:

    https://code.google.com/p/android/issues/detail?id=208214

    Usando com.android.tools.build:gradle:2.1.2 Eu configurei org.gradle.jvmairgs=-Xmx3415M com dexOptions.javaMaxHeapSize "2g" e a mensagem de erro foi embora.

    Na WINDOW'S abre o gradle.properties de ~ \ Users \ UserName \ .gradle como mostrado abaixo: paira mais informações, insira a descrição do link aqui

    insira a descrição da imagem aqui

    e certifique-se de definir o seu valor como mínimo paira 4608M como mostrado abaixo paira compilações mais rápidas org.gradle.jvmairgs = -Xmx4608M

    Depois de fazer isso, você pode view a diferença de dia e noite na velocidade de criação de seu aplicativo …

    • Verifique no primeiro gradle.propertises no diretório raiz do projeto.

    Se for ausência, crie um file como este, então adicione org.gradle.jvmairgs = -Xmx1536m

    caso contrário, se já estiview lá, por favor, aumente o tamanho.

    Eu enfrentei o mesmo problema, onde eu resolvi por este path.

    Experimente isso

     defaultConfig { ... // Enabling multidex support. multiDexEnabled true } ... defaultConfig { ... // Enabling multidex support. multiDexEnabled true } 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.