titulo - Android Studio gradle lleva demasiado tiempo construir
gradle tutorial español (17)
Mi proyecto de Android Studio solía construir más rápido, pero ahora lleva mucho tiempo construirlo. ¿Alguna idea de lo que podría estar causando los retrasos? He intentado https://stackoverflow.com/a/27171878/391401 pero no hay efecto. No tengo ningún antivirus funcionando que pueda interrumpir las compilaciones. Mi aplicación no es tan grande en tamaño también (alrededor de 5 MB ) y solía construir en pocos segundos, pero no estoy seguro de qué ha cambiado.
10:03:51 Gradle build finished in 4 min 0 sec
10:04:03 Session ''app'': running
10:10:11 Gradle build finished in 3 min 29 sec
10:10:12 Session ''app'': running
10:20:24 Gradle build finished in 3 min 42 sec
10:28:18 Gradle build finished in 3 min 40 sec
10:28:19 Session ''app'': running
10:31:14 Gradle build finished in 2 min 56 sec
10:31:14 Session ''app'': running
10:38:37 Gradle build finished in 3 min 30 sec
10:42:17 Gradle build finished in 3 min 40 sec
10:45:18 Gradle build finished in 3 min 1 sec
10:48:49 Gradle build finished in 3 min 30 sec
10:53:05 Gradle build finished in 3 min 22 sec
10:57:10 Gradle build finished in 3 min 19 sec
10:57:11 Session ''app'': running
- Ir a Archivo-> Configuración -> Gradle -> Establecerlo en modo fuera de línea y verificar
1) Mi tiempo de compilación se incrementó severamente después de que agregué algunas nuevas dependencias de biblioteca a mi archivo gradle, lo que resultó que necesito usar multidex después de eso. Y cuando configuré multidex correctamente, mis tiempos de construcción aumentaron a 2-3 minutos. Por lo tanto, si desea tiempos de compilación más rápidos, evite el uso de multidex y, en la medida de lo posible, reduzca el número de dependencias de la biblioteca.
2) También puede intentar habilitar el "trabajo fuera de línea" en el estudio de Android, como se sugiere aquí, que tiene sentido. Esto no volverá a buscar bibliotecas cada vez que realice una compilación. Quizás la conexión lenta o el uso de proxy / vpn con el "trabajo fuera de línea" deshabilitado pueden llevar a tiempos de compilación más lentos.
3) Servicios de google: como se menciona aquí, no use todo el paquete, use solo las partes necesarias.
En Android Studio, vaya a Archivo -> Configuración -> Compilación, Ejecución, Despliegue -> Herramientas de compilación -> Gradle
(si está en mac) Android Studio -> preferencias ... -> compilación, ejecución, despliegue -> herramientas de compilación -> Gradle
Compruebe el ''Trabajo fuera de línea'' en ''Configuración de Global Gradle''
Reducirá el 90% del tiempo de construcción de gradle.
si acaba de agregar una nueva dependencia en su gradle, deberá desmarcar el trabajo fuera de línea o gradle no podrá resolver las dependencias. Después de la resolución completa, entonces usted puede verificar el trabajo fuera de línea para una compilación más rápida
En la versión beta de Android Studio 2.0, lanzaron una característica llamada Instant Run . Reduce el tiempo de construcción por un factor importante. El concepto central es que Android Studio solo impulsa los pequeños cambios realizados en una aplicación que ya se está ejecutando.
Clasifica los cambios que hacemos en nuestro código en tres partes: intercambio en caliente, intercambio en caliente y cambio en frío, en función de la carga que el cambio supondría para la construcción. Después de eso, simplemente cambia el código en la aplicación que ya se está ejecutando y podemos ver que los cambios se ejecutan en unos segundos. Vea su documento para más información.
Here puedes descargar la vista previa de Android Studio 2.0.
PD: hay algunos problemas con esta característica. Lo han enumerado en los documentos. Compruébalo antes de la instalación.
Encontré una manera fácil y mejor para construir gradle
ve a tu aplicación >> abre tus gradle.properties y cambia algunas líneas [remove # ]
de lo contrario, puedes copiar pegar mi fragmento debajo también
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# 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 arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx2048m -XX:MaxPermSize=512m
org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
# When configured, Gradle will run in incubating parallel 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.parallel=true
funcionó para mí antes, toma casi 2 o 3 minutos y ahora solo toma 5-6 segundos
en el escenario anterior, mi máquina mac tiene 8 GB de RAM, así que le asigné 4 gb para gradle
Encontrado el motivo !! Si Android Studio tiene una configuración de servidor proxy y no puede acceder al servidor, tarda mucho tiempo en compilarse, probablemente se trate de llegar al servidor proxy y esperar un tiempo de espera. Cuando eliminé la configuración del servidor proxy funcionaba bien.
Eliminación de proxy: File > Settings > Appearance & Behavior > System settings > HTTP Proxy
Estuve enfrentando el mismo problema durante mucho tiempo, pero lo resolví ajustando la configuración en gradle.
Paso 1: en la aplicación Módulo, agregue dependencia en BuildScript
buildscript {
dependencies {
classpath ''com.android.tools.build:gradle:2.0.0-alpha9''
}
}
Paso 2: agregue dexOption y proporcione el siguiente heapSize
dexOptions {
incremental = true;
preDexLibraries = false
javaMaxHeapSize "4g"
}
Paso 3: agregar productFlavors
productFlavors {
dev {
minSdkVersion 23
applicationId = "com.Reading.home"
}
prod {
minSdkVersion 15
applicationId = "com.Reading.home" // you don''t need it, but can be useful
}
}
Esto debería reducir tu tiempo de construcción.
Habilitar las características de Java 8 provocó una compilación lenta y letal
gradle
jackOptions {
enabled true
}
compileOptions {
targetCompatibility 1.8
sourceCompatibility 1.8
}
Después de eliminar las líneas anteriores, se genera en segundos.
Existe un problema Compilar con Jack lleva mucho tiempo
Respuesta del gerente del proyecto
Somos conscientes de que los tiempos de construcción son un problema con Jack en este momento. Tenemos mejoras en el plugin 2.4 Gradle que debería ser una mejora significativa para las compilaciones incrementales.
A partir de ahora, la última versión de Gradle que puedo encontrar es 2.3.0-beta4
Intenta reiniciar tu computadora y ejecutar Android Studio nuevamente. Trabajé para mí cuando intentaba construir un proyecto Cordova / Phonegap con una base de código de destino de Android.
La solución @AndroidDev funcionó para mí. Había incluido toda la lib en gradle.
compile ''com.google.android.gms:play-services:8.4.0''
Cambiando para resolver el problema. De 4 min a 1 min
compile ''com.google.android.gms:play-services-ads:8.4.0''
compile ''com.google.android.gms:play-services-analytics:8.4.0''
Thnx
Lectura recomendada: cómo ahorro 5 horas por semana en las compilaciones de Gradle .
De acuerdo con esta excelente publicación, debes intentar optimizar lo siguiente:
- Gradle Daemon
- Ejecución paralela del proyecto
- Configurar proyectos a pedido
- Los módulos son caros ...
Seguir los pasos lo hará 10 veces más rápido y reducirá el tiempo de construcción en un 90%
Primero crea un archivo llamado gradle.properties en el siguiente directorio:
/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:/Users/<username>/.gradle (Windows)
Agregue esta línea al archivo:
org.gradle.daemon=true
org.gradle.parallel=true
Si está usando los servicios de Google Play, asegúrese de no estar usando esto en su script de construcción de Gradle:
compile ''com.google.android.gms:play-services:8.3.0''
Solo use las API de Google que su aplicación realmente esté usando. Si todo lo que estás usando es Google Maps, deberías usar esto:
com.google.android.gms:play-services-maps:8.3.0
Cuando hice esto, mi tiempo de compilación pasó de más de 2 minutos a alrededor de 25 segundos. Para obtener una lista de las API de Google con las que puede compilar selectivamente, consulte:
Tuve el mismo problema en kotlin. Actualizar el tiempo de ejecución de kotlin obsoleto lo resolvió para mí
Tuve un problema similar en mi computadora. Windows Defender estaba bloqueando una parte del Edificio Gradle. Lo he desactivado, funcionó bien después de eso.
Si está usando Windows 8 ...
Las soluciones DroidArc y AndroidDev son útiles, pero no enuguadas. Mi problema estaba relacionado con mi sistema operativo Windows 8 y su uso de disco 100%.
Especialmente el servicio de búsqueda de Windows, fue el más consumido. Inhabilítelo con: cmd (Admin)> net.exe pare "Búsqueda de Windows"
Seguí las instrucciones en este enlace y resolvió el problema de forma real. 4 consejos para arreglar el 100% del uso del disco y mejorar el rendimiento de Windows
Espero que esto ayude.
Verifique su conexión a Internet . Si la velocidad de Internet es muy lenta, la compilación de gradle también tardará mucho tiempo en compilarse. Compruebo cambiando mi conexión wifi a internet con otra buena conexión de velocidad. Ahora el tiempo de compilación es normal. Por favor, intente esto antes de ir a otras soluciones. alguien tomará la decisión equivocada de volver a instalar o cambiar la configuración. Espero que ayude Gracias y saludos.