De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

Gradle es una herramienta de automatización de compilación para el desarrollo de software en varios idiomas. Controla el proceso de desarrollo en las tareas de compilación y empaquetado para pruebas, implementación y publicación. Los lenguajes admitidos incluyen Java ( Kotlin , Groovy , Scala ), C / C ++ , JavaScript . [2]

Gradle se basa en los conceptos de Apache Ant y Apache Maven , e introduce un lenguaje específico de dominio basado en Groovy y Kotlin en contraste con la configuración de proyecto basada en XML utilizada por Maven. [3] Gradle utiliza un gráfico acíclico dirigido para determinar el orden en el que se pueden ejecutar las tareas, mediante la administración de dependencias.

Gradle fue diseñado para compilaciones de múltiples proyectos, que pueden llegar a ser grandes. Funciona en función de una serie de tareas de compilación que pueden ejecutarse en serie o en paralelo. Las compilaciones incrementales se apoyan determinando las partes del árbol de compilación que ya están actualizadas; No es necesario volver a ejecutar ninguna tarea que dependa únicamente de esas partes. También admite el almacenamiento en caché de componentes de compilación, potencialmente a través de una red compartida utilizando Gradle Build Cache . Produce una visualización de compilación basada en la web llamada Gradle Build Scans . El software es extensible para nuevas funciones y lenguajes de programación con un subsistema de complementos.

Gradle se distribuye como software de código abierto bajo Apache License 2.0 y se lanzó por primera vez en 2007.

Historia [ editar ]

A partir de 2016, los complementos iniciales se centraron principalmente en el desarrollo y la implementación de Java , [4] Groovy y Scala .

Ejemplo de proyecto Java [ editar ]

En este ejemplo, la estructura de directorios de Maven se usa para fuentes y recursos de Java. Estos directorios son src / main / java , src / main / resources , src / test / java y src / test / resources .

Archivo build.gradle [ editar ]

aplicar complemento: 'java'

La ejecución de la tarea de compilación ( compilación de Gradle ) da como resultado el registro de la consola:

> gradle build : compileJava: processResources : classes : jar : assemble : compileTestJava : processTestResources : testClasses : test : check : buildCONSTRUIR CON ÉXITO

El complemento de Java emula muchos de los ciclos de vida esperados de Maven como tareas en el gráfico acíclico dirigido de dependencias para las entradas y salidas de cada tarea. Para este caso simple, la tarea de compilación depende de los resultados de las tareas de verificación y ensamblaje . Asimismo, la verificación depende de la prueba y el montaje depende del recipiente .

Para proyectos que no siguen las convenciones de Maven, Gradle permite configurar la estructura de directorios. El siguiente ejemplo admitiría un proyecto que contiene archivos fuente en src / java en lugar de la convención src / main / java impuesta por Maven.

Archivo build.gradle [ editar ]

aplicar complemento: 'java'sourceSets.main.java.srcDirs = ['src / java']

Ejemplo de migración de hormigas [ editar ]

Gradle está estrechamente integrado con Ant e incluso trata los archivos de compilación de Ant como scripts que podrían importarse directamente durante la compilación. Este ejemplo muestra un objetivo Ant simplista que se incorpora como una tarea de Gradle.

Archivo build.xml [ editar ]

<proyecto>  <target  name = "ant.target" >  <echo  message = "¡Ejecutando ant.target!" />  </destino> </proyecto>

Archivo build.gradle [ editar ]

hormiga . importBuild  'build.xml'

Ejecutar el comando gradle ant.target da como resultado

> gradle ant.target : ant.target [ant: echo] Ejecutando ant.target!CONSTRUIR CON ÉXITO

Ver también [ editar ]

  • Lista de software de automatización de compilación

Referencias [ editar ]

  1. ^ "Distribuciones de Gradle" . Servicios de Gradle .
  2. ^ "Manual de usuario de Gradle" . docs.gradle.org . Consultado el 14 de noviembre de 2020 .
  3. ^ "Introducción a Gradle" . Petri Kainulainen . Consultado el 26 de marzo de 2016 .
  4. ^ "Introducción · Creación de proyectos Java con Gradle" . Consultado el 26 de marzo de 2016 .

Bibliografía [ editar ]

  • Berglund, Tim; McCullough, Matthew (julio de 2011). Construyendo y probando con Gradle . Prólogo de Hans Dockter (Primera ed.). O'Reilly Media . pag. 116. ISBN 978-1-4493-0463-8.
  • Berglund, Tim (agosto de 2013). Gradle Beyond the Basics (Primera ed.). O'Reilly Media . pag. 69. ISBN 978-1-449-30467-6.
  • Ikkink, Hubert (noviembre de 2012). Guía de implementación efectiva de Gradle (primera edición). Packt Publishing . pag. 382. ISBN 978-1849518109.
  • Berglund, Tim; McCullough, Matthew (mayo de 2013). Gradle DSL (Primera edición). O'Reilly Media . págs. 50 est. ISBN 978-1-4493-0467-6.
  • Muschko, Benjamin (otoño de 2013). Gradle en acción (Primera ed.). Publicaciones Manning . pag. 390. ISBN 9781617291302.

Enlaces externos [ editar ]

  • Página web oficial
  • Sitio web oficial de Gradle Enterprise
  • Breaking Open: Gradle: una entrevista sobre Gradle y Gradleware, su historia, motivación y desafíos en YouTube con el fundador de Gradle, Hans Dockter y Aleksandar Gargenta