Quantcast
Channel: Karriere – Seite 14 – mynethome.de
Viewing all articles
Browse latest Browse all 65

Gradle Build System: JavaDoc generieren

$
0
0

Und nun zu etwas völlig anderem: Build automation mit Gradle. Richtig, ein technischer Beitrag :-)

Gradle ist ein sehr interessates und mächtiges Buildsystem, dass nicht wie Ant auf XML zur Konfiguration setzt, sondern Groovy als DSL (Domain Specific Language) einsetzt um zum Ziel zu kommen. Dadurch wird es sehr mächtig und vielseitig einsetzbar. Das interessante ist auch, das Groovy sanfte Migrationen, zum Beispiel von Maven oder Ant ermöglicht, indem man vorhandene Konfigurationen von dort einfach einbinden und weiterverwenden kann.

Leider hat Gradle zur Zeit leider noch die Schwäche hat, nicht besonders umfangreich dokumentiert zu sein. Auch in den Weiten des Netz hat es noch nicht genug Spuren hinterlassen, als dass jede Frage schnell mit Google beantwortet werden kann. Und genau das hat mich zu diesem Beitrag inspiriert, in dem ich kurz ein Beispiel für ein Gradle Skript festhalten möchte, der einige Anpassungen für die Erstellung der Dokumentation mit JavaDoc enthält:

build.gradle:

apply plugin: 'java'

dependencies {
    compile fileTree(dir: libDir, include: '*.jar')
}

javadoc {
  appName = 'my application'
  developerEmail = test@domain.com
  project.configure(options) {
    memberLevel = org.gradle.external.javadoc.JavadocMemberLevel.PROTECTED
    charSet = "ISO-8859-1"
    docTitle = "$appName"
    windowTitle = "$appName"
    header = "$appName"
    bottom = "Contact via " +  developerEmail.trim() +" $developerName for feedback."
    author = "true"
    use = "true"
    links("http://java.sun.com/j2ee/1.4/docs/api", "http://java.sun.com/j2se/1.5.0/docs/api")

  }
}

task initDirs << {
    project.sourceSets.main.java.srcDirs*.mkdirs()
    project.sourceSets.main.resources.srcDirs*.mkdirs()
    new File((String) libDir).mkdirs()
}

In der definierten Fusszeile (bottom) oder auch im initDirs-Task kann man gut die Stärke von Groovy als DSL erkennen.

Gradle verfügt über eine Menge interessanter Features, einen Blick darauf zu werfen kann ich durchaus empfehlen :)
Auf dem ersten Hackergarten im März haben wir auch daran mitgearbeitet. Erfreulicher weise wurden unsere Änderungen angenommen und sind nun in Gradle enthalten - Open Source live!


Viewing all articles
Browse latest Browse all 65

Trending Articles


FORECLOSURE OF REAL ESTATE MORTGAGE


FORTUITOUS EVENT


Pokemon para colorear


Sapos para colorear


Maganda Quotes – tagalog Quotes – Inggit Quotes


Love with Heart Breaking Quotes


Re:Mutton Pies (lleechef)


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


Vimeo 10.7.0 by Vimeo.com, Inc.


Vimeo 10.7.1 by Vimeo.com, Inc.


Smile Quotes


KASAMBAHAY BILL IN THE HOUSE


Girasoles para colorear


Presence Quotes – Positive Quotes


Long Distance Relationship Tagalog Love Quotes


INUMAN QUOTES


RE: Mutton Pies (frankie241)


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...


EASY COME, EASY GO


UPDATE SC IDOL: TWO BECOME ONE