with update studio replaced muestra has diseño configurar compile been and actualizar android android-studio gradle android-gradle build.gradle

update - Android build gradle es demasiado lento(Resolución de dependencia)



install gradle android studio (9)

Llevo 2 años trabajando con Android Studio (mi versión actual 1.5). Todo estaba bien, pero cuando descargué Canary (2.1 p5), todo salió mal. Cada vez que quiero crear un nuevo proyecto o abrir un proyecto o sincronizar o importar una nueva biblioteca o dependencia, Gradle está tardando demasiado en construirse, casi 20 minutos .

No hice nada, solo descargué la versión de Canary y la ejecuté.

Síntomas

  1. Sucedió cuando me conecté a Internet
  2. El primer retraso está en Gradle: Resolver dependencias '': aplicación: _debugCompile''
  3. ...
  4. Después de 25 minutos, el edificio está casi terminado.

Nota : cuando desconecte mi Internet, gradle terminará lo más rápido posible

Traté de arreglar esto de esta manera :

  1. Cambié el gradle al trabajo fuera de línea (funcionó pero no quiero de esta manera, porque quiero importar libs o dependencias)
  2. gradle.properties un nuevo archivo (el nombre del archivo es gradle.properties ) en C:/Users/username/.gradle luego escribí estas líneas en él

    org.gradle.parallel=true org.gradle.daemon=true

  3. Eliminé esa versión y luego instalé mi versión anterior que funcionaba bien, pero el problema seguía ahí :(

  4. Deshabilitar / Habilitar firewall

  5. Deshabilitar / Habilitar antivirus (Nod32)

  6. Vuelva a instalar el sistema operativo Windows (8.1)

  7. He descargado todas las versiones (1.0.0, ..., 1.5.1, 2.0.0, 2.1)

  8. He usado un proxy

Información del sistema :

  • CPU: Intel Core i5
  • RAM: 6.00 GB
  • SO: Windows 8.1 de 64 bits

build.gradle (Proyecto: appName)

// 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:1.5.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 }

gradle.build (Módulo: aplicación)

apply plugin: ''com.android.application'' android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "com.example.test.myapplication" minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" } 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:23.3.0'' }

Informe Gradle después de construir

Dependencies Duration All dependencies 14m3.43s :app:_releaseCompile 3m30.96s :app:_debugCompile 3m30.73s :app:_debugApk 3m30.69s :app:_releaseApk 3m30.62s :classpath 0.428s :app:_debugAndroidTestCompile 0.001s :app:_debugAndroidTestApk 0s :app:_debugUnitTestApk 0s :app:_debugUnitTestCompile 0s :app:_releaseUnitTestApk 0s :app:_releaseUnitTestCompile 0s :app:releaseWearApp 0s :app:wearApp 0s

Después de instalar la versión estable de Android Studio 2.0

  • 7:23:47 PM Gradle sync inició ====> 8:13:21 PM Gradle sync completado

El problema esta resuelto !

Después de 2 días de búsqueda, obtuve la solución, por lo que me gustaría compartir con todas las personas que puedan tener el mismo problema. El problema es que gradle no puede conectarse al repositorio central en algún país. Cuando crea un nuevo proyecto o importación, su repositorio central es jcenter() de forma predeterminada y cada vez que quiera construir o sincronizar o agregar una nueva dependencia externa, gradle se conectará a https://bintray.com/ pero no puede y el proceso de construcción esperará hasta que se conecte a jcenter() , por lo que este proceso puede llevar mucho tiempo (+30 min), incluso no puede agregar una nueva dependencia.

Solución:

  1. Asegúrese de tener la última versión estable (actual 2.0.0)
  2. Asegúrese de que su versión de Gradle sea 2.0.0 en build.gradle ( classpath ''com.android.tools.build:gradle:2.0.0'' )
  3. El último paso y el más importante es cambiar su jcenter () a mavenCentral ()

¡Entonces puede agregar fácilmente una nueva dependencia y un proyecto de sincronización en 3 segundos!

buildscript { repositories { mavenCentral() } dependencies { classpath ''com.android.tools.build:gradle:2.0.0'' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { mavenCentral() } } task clean(type: Delete) { delete rootProject.buildDir }

Que te diviertas


Además de @Mehdi Jahed Manesh, responda arriba.

Aumente la cantidad de memoria asignada a Gradle Daemon VM en 1 Gb, a un mínimo de 2 Gb, utilizando la propiedad org.gradle.jvmargs esta manera:

org.gradle.jvmargs=-Xmx2048m


Como dijo la respuesta de Ismail Iqbal , poner gradle en modo fuera de línea funciona para mí.

  1. Si estás usando Android Studio, sigue la respuesta de Fabio Filho

  2. Si está utilizando la línea de comando como yo, puede intentar

gradlew assembleReleaseStaging(your task name) --offline


En mi caso, lo resolví instalando una nueva versión de Java JDK. Después de instalar el nuevo JDK, abra AS, vaya a Archivo → Estructura del proyecto → Ubicación del SDK, y cambie la ubicación del JDK a la de la nueva versión del Java JDK. Luego se le pedirá permiso de firewall; marque Público y solicite. Deja que resuelva gradle.


He visto otro problema. La solución podría ayudar a alguien

Recientemente configuré http_proxy y https_proxy en las variables de entorno del sistema. Tuve que eliminar ambos y luego configurar el proxy en la configuración de estudio.


Podrías optimizar el proceso de construcción de Gradle ...

Intente poner el gradle en modo fuera de línea forzando a construir sin ninguna conexión a repositorios externos, como este:

Esto me ayudó mucho, porque en mi trabajo, todas las conexiones están detrás de un proxy y aumenta el tiempo de construcción.

Si esto no es suficiente para usted, tómese un tiempo para probar las opciones en Gradle> Experimental ... Algunas opciones pueden mejorar su rendimiento:


Una vez que se haya completado la compilación inicial, intente habilitar el Modo sin conexión desde la configuración de gradle. De modo que cada compilación consecutiva no comenzará a resolver dependencias, sino que se obtiene del caché. Si agrega una nueva dependencia, le pedirá que desactive el modo fuera de línea y lo reconstruya.


cambie classpath ''com.android.tools.build:gradle:1.5.0'' a

classpath ''com.android.tools.build:gradle:2.0.0''

y cambie buildToolsVersion "23.0.3" a

buildToolsVersion "23.0.2"

y use la versión estable de Android Studio 2.0. hágame saber que desea más detalles o esta solución no le funcionó.


Para aquellos que usan repositorios que requieren autenticación , este problema se puede resolver configurando gradle para usar solo un esquema de autenticación:

repositories { maven { credentials { username INTERNAL_REPO_USERNAME password INTERNAL_REPO_PASSWORD } // here comes the important part authentication { basic(BasicAuthentication) } url INTERNAL_REPO_URL } }

Resultó que al autenticarse contra repositorios, Gradle intenta la autenticación utilizando todo tipo de esquemas. La configuración anterior hace que gradle solo use autenticación básica. Here está la lista completa de esquemas disponibles.