Wie schaffen Sie zusätzliche jar-Artefakte aus kompilierten Klassen mit Gradle?

Kann ich nicht sagen, ob das ein bug ist mit Gradle 1.0m7, oder wenn wir gerade dabei sind diese falsch.

Wir haben einige Klassen, die dann kompiliert als abgesehen von einem Projekt, das wir wollen individuell jar in eigene Artefakt. Diese sind zum Beispiel standalone-domain model-Objekte, das wir teilen wollen mit einem weiteren Projekt.

Ich würde es vorziehen, nicht zu gehen in die multi-Projekt-build-route, so wie wir sagen, Gradle, um erstellen Sie eine weitere jar für diese?

Derzeit sind wir, dies zu tun:

task modelJar(type: Jar) {
    classifier = 'model'
    from fileTree(dir: sourceSets.main.classesDir).matching { include 'com/foo/bar/model/**' }
}

artifacts {
    archives modeljar
}

Das Problem hier, ist die modeljar Aufgabe läuft vor die Klassen kompiliert werden. Auf den ersten, die wir nicht erkennen und dachte es funktioniert. Stellt sich heraus, das Artefakt aufnehmen Klassen aus dem vorherigen Lauf, nicht der aktuellen Ausführung. Mache sauber, bevor Sie die build-Ergebnisse in einem Glas mit keine Klassen in es, und es offenbart sich das problem.

Ich war auf der Suche auf benutzerdefinierte Konfiguration, aber es scheint ziemlich Komplex und ich wollte nicht allzu kompliziert wird die build-Datei.

Schätzen jede Beratung.

Dank.

InformationsquelleAutor codemaven | 2012-02-08
Schreibe einen Kommentar