Build Prozesse automatisieren
Im Umfeld der Java Entwicklung gibt eine ganze Reihe Werkzeugen, die den Build Prozess standardisieren und vereinfachen. Stellvertretend seien Ant, Gradle, Buildr und selbstverständlich Maven genannt. Grade Maven erfreut sich durch seinen „Konvention vor Konfiguration“-Ansatz wachsender Beliebtheit, grade auch im kommerziellen Umfeld. Mit nur wenigen Konfigurationseinstellungen können Sie ein Java-Projekt bauen und verwalten.
Java Entwickler, Build- und Configuration Manager lernen in dieser Schulung die Basis-Konzepte von Maven im Alltag zu nutzen. Dazu zählen beispielsweise Repositories, GroupId, ArtifactId, Version. Es werden viele Beispiele vorgestellt und besprochen, wie ein Build mit Maven aussieht und welche Funktionen mit Maven abgebildet werden können.
Es wird besprochen wie das Dependency Management funktioniert und wie Artefakte ins Maven Central übernommen werden können. Weiterhin wird vorgestellt wie man einen Build in einem kommerziellen Umfeld strukturieren und Unternehmensstandards definieren kann.
Trainer und Dozenten
Karl Heinz Marbaise ist seit ca. 25 Jahren im Bereich der Softwareentwicklung tätig. Seit ca. 20 Jahren beschäftigt er sich mit Versionskontrollsystemen wie mit RCS, CVS, ClearCase und später mit Subversion und Git. Er führt seit Jahren Beratungen und Trainings im Bereich Software Konfigurationsmanagement (Subversion, Branching Strategien, Migrationsberatung), Build Management (Ant, Maven, Hudson/Jenkins) und Entwicklungsprozesse durch. Weiterhin hält er auf verschiedensten Konferenzen (z.B. Subversion Konferenz, GearConf) zu entsprechenden Themengebieten Vorträge.
Voraussetzungen
Die Voraussetzung für den Maven Workshop sind vor allem Kenntnisse in der Java Entwicklung. Darüber hinaus wird auch Wissen im Bereich des Unit Testings z.B. mit Hilfe von JUnit oder TestNG voraus gesetzt.
Grundlegendes Wissen im Bereich der Versionskontrolle (Subversion, Git o.ä. ist durchaus Hilfreich).
Inhalt
Maven Basics:
- Repositories, Lifecycle
- Project Object Model (POM)
- Die Maven Koordinaten
- POM Vererbung/Aggregation
- Archetypes
Dependencies
- Definition von Abhängigkeiten
- Transitive Abhängigkeiten
- Ein- bzw. Ausschluss von Abhängigkeiten
Beispiel Projekt
- Einfachste POM
- Paketierung, Unit Tests, Resources
Site generation
- Wie eine Web-Site erzeugt wird.
- Veröffentlichung einer Site (deploy)
- Dokumentation, apt, fmt, xdoc, Reports
Reactor builds
- Multiple Modules
- mvn install
- Integration Test
- Packaging
Assemblies
- Default assemblies
- Archive types
- Component Descriptors
- Creating test-jars
Release Cycle
- Wie der Release Zyklus arbeitet?
- Wie der Release Zyklus zu nutzen ist.
- Signierung von Artefakten während des Release Zykluses.
Best Practice, POM's, Modules
- Warum und wie man Properties nutzt.
- Filterung von Resources.
- Definition und Nutzung von eigenen Resourcen.
Die settings.xml Datei
- Definition von Servern
- Passwörtern
- Deploy Server
Profile
- settings.xml
- Profile in POM's
- Aktivierung von Profilen.
- Environment, Compatibility, Refactoring POM's
Unterschiedliche Plugins
- Compiler, Jar,
- Changes, Assembly, Appassembler, Buildnumber
- plugin, War, Cargo, Dependency, Antrun
- Definition von Abhängigkeiten
- Transitive Abhängigkeiten
- Ein- bzw. Ausschluss von Abhängigkeiten
Beispiel Projekt
- Einfachste POM
- Paketierung, Unit Tests, Resources
Site generation
- Wie eine Web-Site erzeugt wird.
- Veröffentlichung einer Site (deploy)
- Dokumentation, apt, fmt, xdoc, Reports
Reactor builds
- Multiple Modules
- mvn install
- Integration Test
- Packaging
Assemblies
- Default assemblies
- Archive types
- Component Descriptors
- Creating test-jars
Release Cycle
- Wie der Release Zyklus arbeitet?
- Wie der Release Zyklus zu nutzen ist.
- Signierung von Artefakten während des Release Zykluses.
Best Practice, POM's, Modules
- Warum und wie man Properties nutzt.
- Filterung von Resources.
- Definition und Nutzung von eigenen Resourcen.
Die settings.xml Datei
- Definition von Servern
- Passwörtern
- Deploy Server
Profile
- settings.xml
- Profile in POM's
- Aktivierung von Profilen.
- Environment, Compatibility, Refactoring POM's
Unterschiedliche Plugins
- Compiler, Jar,
- Changes, Assembly, Appassembler, Buildnumber
- plugin, War, Cargo, Dependency, Antrun
- Wie eine Web-Site erzeugt wird.
- Veröffentlichung einer Site (deploy)
- Dokumentation, apt, fmt, xdoc, Reports
Reactor builds
- Multiple Modules
- mvn install
- Integration Test
- Packaging
Assemblies
- Default assemblies
- Archive types
- Component Descriptors
- Creating test-jars
Release Cycle
- Wie der Release Zyklus arbeitet?
- Wie der Release Zyklus zu nutzen ist.
- Signierung von Artefakten während des Release Zykluses.
Best Practice, POM's, Modules
- Warum und wie man Properties nutzt.
- Filterung von Resources.
- Definition und Nutzung von eigenen Resourcen.
Die settings.xml Datei
- Definition von Servern
- Passwörtern
- Deploy Server
Profile
- settings.xml
- Profile in POM's
- Aktivierung von Profilen.
- Environment, Compatibility, Refactoring POM's
Unterschiedliche Plugins
- Compiler, Jar,
- Changes, Assembly, Appassembler, Buildnumber
- plugin, War, Cargo, Dependency, Antrun
- Default assemblies
- Archive types
- Component Descriptors
- Creating test-jars
Release Cycle
- Wie der Release Zyklus arbeitet?
- Wie der Release Zyklus zu nutzen ist.
- Signierung von Artefakten während des Release Zykluses.
Best Practice, POM's, Modules
- Warum und wie man Properties nutzt.
- Filterung von Resources.
- Definition und Nutzung von eigenen Resourcen.
Die settings.xml Datei
- Definition von Servern
- Passwörtern
- Deploy Server
Profile
- settings.xml
- Profile in POM's
- Aktivierung von Profilen.
- Environment, Compatibility, Refactoring POM's
Unterschiedliche Plugins
- Compiler, Jar,
- Changes, Assembly, Appassembler, Buildnumber
- plugin, War, Cargo, Dependency, Antrun
- Warum und wie man Properties nutzt.
- Filterung von Resources.
- Definition und Nutzung von eigenen Resourcen.
Die settings.xml Datei
- Definition von Servern
- Passwörtern
- Deploy Server
Profile
- settings.xml
- Profile in POM's
- Aktivierung von Profilen.
- Environment, Compatibility, Refactoring POM's
Unterschiedliche Plugins
- Compiler, Jar,
- Changes, Assembly, Appassembler, Buildnumber
- plugin, War, Cargo, Dependency, Antrun
- settings.xml
- Profile in POM's
- Aktivierung von Profilen.
- Environment, Compatibility, Refactoring POM's
Unterschiedliche Plugins
- Compiler, Jar,
- Changes, Assembly, Appassembler, Buildnumber
- plugin, War, Cargo, Dependency, Antrun
Kurszeiten
Wer möchte, reist bis 22 Uhr am Vortag an und nutzt den Abend bereits zum Fachsimpeln am Kamin oder im Park.
An Kurstagen gibt es bei uns ab 8 Uhr Frühstück.
Unsere Kurse beginnen um 9 Uhr und enden um 18 Uhr
Neben den kleinen Pausen gibt es eine Stunde Mittagspause mit leckerem, frisch in unserer Küche zubereitetem Essen.
Nach der Schulung anschließend Abendessen und Angebote für Fachsimpeln, Ausflüge uvm. Wir schaffen eine Atmosphäre, in der Fachleute sich ungezwungen austauschen. Wer das nicht will, wird zu nichts gezwungen und findet auch jederzeit Ruhe.
Termine und Anmeldung
-
28. April 2025, 3 Tage
Versionskontrolle mit Git und Maven anmelden -
30. April 2025, 1 Tag
Maven anmelden
Haben Sie einen anderen Wunschtermin?