Lo genera una vez, y nuevamente cuando desea cambiar la versión de Gradle que usa en el proyecto. No hay necesidad de generar es tan a menudo. Aquí están los documentos. Simplemente agregue wrappertarea abuild.gradle archivo y ejecute esta tarea para obtener la estructura del contenedor.
Tenga en cuenta que necesita tener instalado Gradle para generar un contenedor. ¡La gran herramienta para gestionar los artefactos del ecosistema g es SDKMAN! . Para generar una envoltura de gradle, agregue el siguiente código al build.gradlearchivo:
task wrapper(type: Wrapper) {
gradleVersion = '2.0' //version required
}
y correr:
gradle wrapper
tarea. Agregue los archivos resultantes a SCM (por ejemplo, git) y a partir de ahora todos los desarrolladores tendrán la misma versión de Gradle cuando usen Gradle Wrapper.
Con Gradle 2.4 (o superior) puede configurar un contenedor sin agregar una tarea dedicada:
gradle wrapper --gradle-version 2.3
o
gradle wrapper --gradle-distribution-url https://myEnterpriseRepository:7070/gradle/distributions/gradle-2.3-bin.zip
Todos los detalles se pueden encontrar aquí.
También se 3.1 --distribution-typepuede usar la opción de Gradle . Las opciones son binarias y todas y bin . todo además contiene código fuente y documentación. todo también es mejor cuando se usa IDE, por lo que el editor funciona mejor. El inconveniente es que la compilación puede durar más (necesita descargar más datos, no tiene sentido en el servidor CI) y tomará más espacio.
Estos son archivos de Gradle Wrapper. Debe generarlos una vez (para una versión en particular) y agregarlos al control de versiones. Si necesita cambiar la versión de Gradle Wrapper, cambie la versión en build.gradlever (1.) y vuelva a generar los archivos.
Da un ejemplo detallado. Dicho archivo puede tener múltiples propósitos: proyecto de varios módulos, separación de responsabilidades, secuencia de comandos ligeramente modificada, etc.
settings.gradlees responsable más bien de la estructura del proyecto (módulos, nombres, etc.), mientras que gradle.propertiesse usa para los detalles externos del proyecto y de Gradle (versión, argumentos de la línea de comandos -XX, propiedades, etc.)
build.gradlescript en varios más cortos y se dedicaron a un script de propósito particular. Como puede, la secuencia de comandos ubicada en el directorio gradle se aplica albuild.gradlearchivo principal , vea: github.com/Netflix/eureka/blob/master/build.gradle . Donde pones dichos módulos es de tu elección. Eso es todo en general. Si está satisfecho con la respuesta, acepte la respuesta :)--distribution-type, por ejemplo,gradle wrapper --gradle-version 4.3.1 --distribution-type ALLGenerando el Gradle Wrapper
Proyecto construir gradle
Luego en la línea de comando ejecutar
Si le falta gradle en su sistema, instálelo o lo anterior no funcionará. En una Mac, es mejor instalar a través de Homebrew.
Después de haber ejecutado con éxito la tarea de envoltura y generada
gradlew, no use su sistema gradle. Le ahorrará muchos dolores de cabeza.¿Qué pasa con el complemento Gradle visto anteriormente?
Debe configurar la versión como la más reciente y puede consultar la página de herramientas y editar la versión en consecuencia.
Mira lo que genera Android Studio
La incorporación de Gradle y el más reciente Android Studio han cambiado drásticamente el diseño del proyecto. Si tiene un proyecto anterior, le recomiendo que cree uno limpio con el último Android Studio y vea lo que Google considera el proyecto estándar.
Android Studio tiene facilidades para importar proyectos antiguos que también pueden ayudar.
fuente
gradleVersion = '2.2'entaskWrapperpuede utilizar cualquier versión que deseo para la generación de la envoltura, correcto? ¿No tiene que ser la última versión de gradle?A partir de Gradle 2.4, puede usar
gradle wrapper --gradle-version X.Xpara configurar una versión específica del contenedor Gradle, sin agregar ninguna tarea a subuild.gradlearchivo. La próxima vez que use el contenedor, descargará la distribución de Gradle adecuada para que coincida.fuente
Si desea descargar gradle con fuente y documentos, la url de distribución predeterminada configurada en gradle-wrapper.properites no satisfará su necesidad. Es https://services.gradle.org/distributions/gradle-2.10-bin.zip , no https://services.gradle.org/distributions/gradle-2.10-all.zip . Esta IDL completa es sugerida por IDE como Android Studio. Si desea descargar el gradle completo, puede configurar la tarea de envoltura de esta manera :
fuente
Este es el comando que se debe usar para indicarle a Gradle que actualice el contenedor de modo que tome las versiones de distribución de las bibliotecas que incluyen el código fuente:
Si especifica el tipo de distribución con "todos", se asegurará de que Gradle descargue los archivos fuente para que los utilice su entorno de desarrollo.
Pros :
Contras :
Comente o proporcione otra respuesta si conoce alguna opción de línea de comandos para decirle a Gradle que no descargue fuentes en un servidor de compilación.
fuente
Los generará una vez, pero los actualizará si necesita una nueva característica o algo de un complemento que a su vez necesita una versión de Gradle más nueva.
La forma más fácil de actualizar: a partir de Gradle 2.2, puede descargar y extraer la distribución completa o binaria de Gradle y ejecutar:
No es necesario definir una tarea, aunque probablemente necesite algún tipo de
build.gradlearchivo.Esto actualizará o creará
gradlewy elgradlew.batcontenedor, así comogradle/wrapper/gradle-wrapper.propertiesygradle-wrapper.jarpara proporcionar la versión actual de gradle, empaquetado.Esos son todos parte de la envoltura.
Algunos
build.gradlearchivos hacen referencia a otros archivos o archivos en subdirectorios que son subproyectos o módulos. Se vuelve un poco complicado, pero si tiene un proyecto, básicamente necesita el único archivo.settings.gradlemaneja proyectos, módulos y otros tipos de nombres y configuraciones,gradle.propertiesconfigura variables reutilizables para sus archivos gradle si lo desea y siente que serían más claros de esa manera.fuente
Como las tareas integradas de Gradle están en desuso en 4.8, intente a continuación
y correr
fuente