There is a whole set of Java developer tools standardising and simplifying the build process. Ant, Gradle, Buildr and, of course, Maven are important examples. Maven is getting more and more popular especially in a business context, due to its convention over configuration philosophy. You can build and control a Java project with just a few configuration settings.
In this training course, build and configuration managers will learn to use the basic concepts of Maven in workaday life. Among these concepts are e.g. Repositories, GroupId, ArtifactId, Version. Numerous examples will be presented and the building process will be explained as well as the range of functionalities covered by Maven.
We will discuss the functions of Dependency Management and how artifacts can be integrated into Maven Central. Furthermore, we will present you with build structures in a business environment and the definition of enterprise-level standards.
Trainer und Dozenten
Karl Heinz Marbaise has 25 years of experience in software development. Since 20 years he is working with version control systems like RCS, CVS ClearCase and later on, Subversion and Git. He is conducting consultancy and training courses in the fields of software configuration management (Subversion, Branching Strategies, Migration Consultancy), Build Management (Ant, Maven, Hudson/Jenkins) and development processes. Furthermore, he is giving lectures on these subjects on conferences, e.g Subversion Conference and GearConf.
Voraussetzungen
Knowledge in Java development is a basic prerequisite for this training course. Furthermore, experience in unit testing by means of JUnit or TestNG is required.
Also, basic know-how in the field of revision control (Subversion, Git or the like) will be helpful.
Inhalt
Maven basics:
- Repositories, Lifecycle
- Project Object Model (POM)
- Maven coordinates
- POM inheritance/aggregation
- Archetypes
Dependencies
- Definition of dependencies
- Transitive dependencies
- Dependency inclusions vs. exclusions
Case study
- Elementary POM
- Packaging, Unit Tests, Resources
Site generation
- Creating a website
- Publishing a site (deploy)
- Documentation, 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
- Functionality of the release cycle
- Applying the release cycle
- Signing artifacts in release cycles
Best practice, POM's, modules
- Using properties: How to and why?
- Resource filtering
- Definiting and using own resources
Inside the settings.xml file
- Server definition
- Passwords
- Deploy server
Profiles
- settings.xml
- Profiles in POM's
- Activiation of profiles
- Environment, compatibility, refactoring POM's
Varied plugins
- Compiler, jar
- Changes, assembly, appassembler, buildnumber
- Plugin, war, cargo, dependency, antrun
- Definition of dependencies
- Transitive dependencies
- Dependency inclusions vs. exclusions
Case study
- Elementary POM
- Packaging, Unit Tests, Resources
Site generation
- Creating a website
- Publishing a site (deploy)
- Documentation, 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
- Functionality of the release cycle
- Applying the release cycle
- Signing artifacts in release cycles
Best practice, POM's, modules
- Using properties: How to and why?
- Resource filtering
- Definiting and using own resources
Inside the settings.xml file
- Server definition
- Passwords
- Deploy server
Profiles
- settings.xml
- Profiles in POM's
- Activiation of profiles
- Environment, compatibility, refactoring POM's
Varied plugins
- Compiler, jar
- Changes, assembly, appassembler, buildnumber
- Plugin, war, cargo, dependency, antrun
- Creating a website
- Publishing a site (deploy)
- Documentation, 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
- Functionality of the release cycle
- Applying the release cycle
- Signing artifacts in release cycles
Best practice, POM's, modules
- Using properties: How to and why?
- Resource filtering
- Definiting and using own resources
Inside the settings.xml file
- Server definition
- Passwords
- Deploy server
Profiles
- settings.xml
- Profiles in POM's
- Activiation of profiles
- Environment, compatibility, refactoring POM's
Varied plugins
- Compiler, jar
- Changes, assembly, appassembler, buildnumber
- Plugin, war, cargo, dependency, antrun
- Default assemblies
- Archive types
- Component descriptors
- Creating test-jars
Release cycle
- Functionality of the release cycle
- Applying the release cycle
- Signing artifacts in release cycles
Best practice, POM's, modules
- Using properties: How to and why?
- Resource filtering
- Definiting and using own resources
Inside the settings.xml file
- Server definition
- Passwords
- Deploy server
Profiles
- settings.xml
- Profiles in POM's
- Activiation of profiles
- Environment, compatibility, refactoring POM's
Varied plugins
- Compiler, jar
- Changes, assembly, appassembler, buildnumber
- Plugin, war, cargo, dependency, antrun
- Using properties: How to and why?
- Resource filtering
- Definiting and using own resources
Inside the settings.xml file
- Server definition
- Passwords
- Deploy server
Profiles
- settings.xml
- Profiles in POM's
- Activiation of profiles
- Environment, compatibility, refactoring POM's
Varied plugins
- Compiler, jar
- Changes, assembly, appassembler, buildnumber
- Plugin, war, cargo, dependency, antrun
- settings.xml
- Profiles in POM's
- Activiation of profiles
- Environment, compatibility, refactoring POM's
Varied 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.