es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Gradle todavía descarga las dependencias que ya están disponibles en el repositorio local.

He configurado Gradle para usar un repositorio Maven local (archivo gmaven_stable) utilizando el método del archivo “offline.gradle” en el directorio “.gradle\init.d”.

Constantemente actualizo el repositorio local de Maven con archivos ya descargados en la caché de dependencias de Gradle (.gradle\caches\modules-2\files-2.1).

Sin embargo, me he dado cuenta de que Gradle aún descarga algunas dependencias durante la “sincronización de Gradle” y en tiempo de compilación, la mayoría de las cuales ya tengo en mi repositorio local de Maven. Dependencias como “junit”, “Google Play Services” y muchas otras se descargan siempre que presiono el botón “Build” o “Run” en Android Studio.

Agradecería mucho si alguien me pudiera guiar para detener este comportamiento en Gradle. Paso mucho tiempo recopilando dependencias para construir mi repositorio local de Maven debido al acceso a internet limitado y costoso en mi área. Es bastante molesto que esa escasa conexión a internet que tengo se utilice para volver a descargar esas dependencias que ya tengo en caché en mi repositorio local de Maven.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Solución:

    Para evitar descargar dependencias en caché durante “gradle sync” y “compile time”, puedes seguir los siguientes pasos:

    1. Verifica que hayas añadido el repositorio local de Maven a tu archivo build.gradle en tu proyecto. Ejemplo:
    allprojects {
        repositories {
            mavenLocal()
            // Otros repositorios
        }
    }
    
    1. Verifica que hayas añadido el archivo offline.gradle al directorio .gradle/init.d. Ejemplo:
    initscript {
        repositories {
            maven {
                url uri('/ruta/a/gmaven_estable')
            }
        }
        dependencies {
            classpath 'org.codehaus.groovy:groovy-all:2.4.15'
        }
    }
    allprojects {
        apply plugin: OfflineMavenPlugin
    }
    
    1. Borra el directorio .gradle/caches para asegurarte de que todas las dependencias se descargarán de nuevo.
    2. Ejecuta los comandos “gradle sync” o “build” o “run” como de costumbre.

    Siguiendo los pasos anteriores, Gradle no descargará ninguna dependencia en caché durante “gradle sync” y “compile time”. Utilizará el repositorio local de Maven y las dependencias descargadas del directorio .gradle/caches. Esto te ayudará a ahorrar tiempo y uso de datos de internet en la construcción de tu proyecto.

Comments are closed.