A Gradle projektépítő eszköz, amely az Apache Ant és az Apache Maven koncepciójára épül, és bevezeti a Groovy-alapú doménspecifikus nyelvet (angol rövidítéssel DSL-t), a projektkonfiguráció deklarációját a hagyományosabb XML forma helyett. A Gradle a feladatok futási sorrendjének meghatározására irányított körmentes gráfot (DAG) használ.
A Gradle-t több alprojektes projekt építéséhez tervezték, mely meglehetősen nagyra nőhet, és támogatja az inkrementális projektépítéseket intelligensen meghatározva, hogy mely részei frissek a felépítési fának, így az azon részektől függő feladatokat nem kell újra végrehajtani.
Az eredeti beépülő modulok a hangsúlyt elsődlegesen a Java, Groovy és Scala fejlesztésre és telepítésre helyezték, de több nyelv és projekt munkafolyamat is van az ütemtervben.
Példa Java projekt Képzeljük el azt az esetet, amikor a Maven könyvtárszerkezetet használunk a Java forrásokra és erőforrásokra. Ezek a könyvtárak a következők: src/main/java, src/main/resources, src/test/java és src/test/resources.
build.gradle apply plugin: 'java'
A gradle build-et futtatva a következőt kapjuk: > gradle build :compileJava :processResources :classes :jar :assemble :compileTestJava :processTestResources :testClasses :test :check :build
BUILD SUCCESSFUL
A java beépülő modul számos elvárt Maven életciklus feladatot emulál a függőségek irányított körmentes gráfjában minden feladat kimeneteihez és bemeneteihez. Ehhez az egyszerű esethez a build feladat függ a check és assemble feladatok kimeneteitől. Hasonlóképpen a check függ a test, és assemble-től, ami függ a jar-tól.
Azon projektek számára, amelyek nem követik a Maven konvencióit, a Gradle lehetővé teszi a könyvtárszerkezet konfigurálhatóságát. A következő példa egy olyan projektet támogat, ahol a forrásfájlok a src/java-ban vannak a Maven által előírt konvenció szerinti src/main/java könyvtár helyett.
build.gradle apply plugin: 'java' sourceSets.main.java.srcDirs = ['src/java']
Példa Ant migrációra A Gradle nagyon szoros integrációban van az Anttal, és az Ant build fájlokat még scriptként is kezeli, melyeket közvetlenül be tud importálni még az összeállítás alatt. A következő példa bemutatja a legegyszerűbb Ant cél használatát beépített Gradle feladatként használva.
build.xml <project> <target name="ant.target"> <echo message="Running ant.target!"/> </target> </project>
build.gradle ant.importBuild 'build.xml'
A gradle ant.target a következőt eredményezi:
> gradle ant.target :ant.target [ant:echo] Running ant.target!
BUILD SUCCESSFUL
Verzió történet Verzió Dátum 0.7 2009-07-20 0.8 2009-09-28 0.9 2010-12-19 1.0 2012-06-12 1.1 2012-07-31 1.2 2012-09-12 1.3 2012-11-20 1.4 2013-01-28 1.5 2013-03-27 1.6 2013-05-07 1.7 2013-08-06 1.8 2013-09-24 1.9 2013-11-19 1.10 2013-12-17 1.11 2014-02-11 1.12 2014-04-29 2.0 2014-07-01http://discuss.gradle.org/t/gradle-2-0-released/7723 2.1 2014-09-08http://discuss.gradle.org/t/gradle-2-1-released/7738 2.2 2014-11-10http://discuss.gradle.org/t/gradle-2-2-released/7718 2.3 2015-02-16http://discuss.gradle.org/t/gradle-2-3-released/7694 2.4 2015-05-05http://discuss.gradle.org/t/gradle-2-4-released/9471 A régebbi verziók elérhetők a Gradle letöltési oldaláról.
Kapcsolódó szócikkek Apache Buildr Make Rake SCons sbt Leiningen
Jegyzetek
Bibliográfia
További információk
Overview Gradle Forums User Guides Standard plugins that ship with Gradle Java Quickstart Guide Groovy Quickstart Guide Examples of Ant usage Gradleware for commercial support of June 11-12th, 2015 in Santa Clara, California by Gradle founder Hans Dockter With Gradle founder Hans Dockter and Aleksandar Gargenta Gradle Presentation Getting Started by Schuchert Prototypes for gradle project
Fordítás
Kategória:Java fejlesztőeszközök Kategória:Automatikus szoftver-összeállítás