Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Maven NetBeans Platform RCP Development Aljoscha Rittner Sepix GmbH, NetBeans Dreamteam Member

Ähnliche Präsentationen


Präsentation zum Thema: "Maven NetBeans Platform RCP Development Aljoscha Rittner Sepix GmbH, NetBeans Dreamteam Member"—  Präsentation transkript:

1 Maven NetBeans Platform RCP Development Aljoscha Rittner Sepix GmbH, NetBeans Dreamteam Member http://www.sepix.de/blogs/blogrittner/ http://twitter.com/beandev

2 Agenda ● Maven RCP Projekte ● Drei Projekttypen für Plattform Projekte ● Unterschiede zu Ant-Projekten ● Alle Abhängigkeiten sind Artifakte ● Build System ist Maven + NetBeans Moyo's ● Hudson Build Server ● Artifactory als Repository

3 Agenda ● Maven RCP Projekte ● Drei Projekttypen für Plattform Projekte ● Unterschiede zu Ant-Projekten ● Alle Abhängigkeiten sind Artifakte ● Build System ist Maven + NetBeans Moyo's ● Hudson Build Server ● Artifactory als Repository

4  Maven RCP Projekte Projekttypen für Maven based Platform Projects > Maven Archetype

5  Maven RCP Projekte Maven NetBeans-Anwendung > Die Basis für eine NetBeans Platform Application > Maven App Builder Project  MultiModule Reactor Project (packaging = pom) > Application Konfigurations Projekt für Platformabhängigkeiten  packaging = nbm-application, Parent ist Pom-Reaktor  = Suite > Ein weiteres POM für Branding Informationen  packaging = nbm, Parent ist Pom-Reaktor  = Modul > Auf Wunsch (bei Aktivierung durch den Assistenten) ein Start- Modul  packaging = nbm, Parent ist Pom-Reaktor  = Modul

6 Agenda ● Maven RCP Projekte ● Drei Projekttypen für Plattform Projekte ● Unterschiede zu Ant-Projekten ● Alle Abhängigkeiten sind Artifakte ● Build System ist Maven + NetBeans Moyo's ● Hudson Build Server ● Artifactory als Repository

7 Unterschiede zu Ant-Projekten Keine Library-Wrapper mehr Keine speziellen project.properties, project.xml und sonstige Konfigurationen, die speziell für NetBeans wären. Resourcen getrennt von Java-Dateien Mehr Handarbeit in xml-Dateien (noch) – Project- Properties Dialog ist „übersichtlich“ Branding getrennt von Applikation Abhängigkeiten werden komplett anders gebunden > aber mit einem Sourcecode Helferlein

8 Unterschiede zu Ant-Projekten The Way of Maven: > Pom.xml für Projekte > Trennung von Sourcecode und Ressourcen > Build-System besteht aus Plugins (Moyos), die selbst wieder aus einem Repositoriy geladen werden > Maven ist nicht nur ein Build-System, Maven ist ein Projektverwaltungssystem > CI-System, Issue-Tracking, Repository-Verwaltung, Plugin- Verwaltung, Dependency-Management > Maven ist keine Scripting-Sprache (wie Ant), alles basiert auf Standard-Strukturen von Projekten.

9 Agenda ● Maven RCP Projekte ● Drei Projekttypen für Plattform Projekte ● Unterschiede zu Ant-Projekten ● Alle Abhängigkeiten sind Artifakte ● Build System ist Maven + NetBeans Moyo's ● Hudson Build Server ● Artifactory als Repository

10 Alle Abhängigkeiten sind Artifakte Fremdbibliotheken nur aus Repositories > Dafür einen Suchdialog für Klassen und Pakete in allen regisitrierten Repositories

11 Alle Abhängigkeiten sind Artifakte Fremdbibliotheken nur aus Repositories > Neue Hilfsfunktion im Sourcecode

12 Alle Abhängigkeiten sind Artifakte

13 Agenda ● Maven RCP Projekte ● Drei Projekttypen für Plattform Projekte ● Unterschiede zu Ant-Projekten ● Alle Abhängigkeiten sind Artifakte ● Build System ist Maven + NetBeans Moyo's ● Hudson Build Server ● Artifactory als Repository

14 Das Buildsystem basiert auf Plugins Pluginmanagement im Haupt-Pom

15 Das Buildsystem basiert auf Plugins Plugin-Nutzung in den Modulen und Suites

16 Agenda ● Maven RCP Projekte ● Drei Projekttypen für Plattform Projekte ● Unterschiede zu Ant-Projekten ● Alle Abhängigkeiten sind Artifakte ● Build System ist Maven + NetBeans Moyo's ● Hudson Build Server ● Artifactory als Repository

17 Hudson Buildserver Hudson als CI (Continious Integration) Server

18 Hudson Buildserver Hudson als CI (Continious Integration) Server

19 Agenda ● Maven RCP Projekte ● Drei Projekttypen für Plattform Projekte ● Unterschiede zu Ant-Projekten ● Alle Abhängigkeiten sind Artifakte ● Build System ist Maven + NetBeans Moyo's ● Hudson Build Server ● Artifactory als Repository

20 Artifactory als Repository Artifactory > als Unternehmensrepository für nicht öffentliche Builds, Artifakte und Projekte > als Artifact Lieferant für legacy JAR Files > als Mirror > für schlecht erreichbare Repositories > als stabile Basis von Artifacts die in fremden Reps unter Entwicklung stehen > führt mehrere Repositories unter einer URL zusammen > als UI Frontend zur Verwaltung eines Repositories

21 Artifactory als Repository Artifactory > Direkter Sprung von Hudson

22 Artifactory als Repository Artifactory > Repository Browser

23 Ausblick NetBeans 7 mit Maven3 Support (since M2) > Maven3embedder by default > "Build with Dependencies" now automatically locates the root aggregator project for even deeply nested modules, making this action more useful for source trees that make heavy use of snapshot dependencies. There is no need to manually define a "reactor location". > If your project's classpath includes annotation processors registered for use by default (i.e. in META-INF/services), they will now be run by the IDE's editor

24 Bücher Maven: The Definitive Guide > Online: http://www.sonatype.com/books/maven-book/http://www.sonatype.com/books/maven-book/ Better Builds with Maven > Online: http://www.maestrodev.com/better-build-mavenhttp://www.maestrodev.com/better-build-maven Apache Articles and Books > http://maven.apache.org/articles.html

25 Fragen & Antworten


Herunterladen ppt "Maven NetBeans Platform RCP Development Aljoscha Rittner Sepix GmbH, NetBeans Dreamteam Member"

Ähnliche Präsentationen


Google-Anzeigen