Maven

Java application build using Maven

Maven has fundamentally revolutionized the Java world, with its introduction of standardization of projects by configuration-by-conventions, automatic dependency handling, generation of a complete website for technical project documentation and more.

This course is for you who will start working in a Java project where you use Maven as a project-build-tool and quickly wants to get up to speed and be productive.

This is what you will learn
  • Overview of Maven and similar build tools
  • Compiling and executing Java programs
  • Packeting of JAR, WAR and ZIP files
  • Generation of JavaDocs and other code processing tools
  • Handling 3.rd party JAR files
  • Dependency management in Maven
  • The most common Maven tasks
Course Contents

Backgroung and Overview

Build tools evolution in the Java community

  • Ant
  • Maven
  • Ivy
  • Gradle
  • Installation of Maven

The target application

Presentation of the sample project used during the course to serve as the target for writing Maven POMs

    Maven Theory

    • Standardized project layout
    • The POM and its structure
    • Important POM elements
    • Standarized build commands
    • Plugins
    • Plugin goals
    • The Maven build life-cycle
    • Local settings

    Bulding Java Apps

    • Overview of the steps
    • Setting Java options
    • Passing compiler options, not directly supported by the compiler plugin
    • Creating JAR files
    • Making a JAR executable
    • Generating JavaDocs
    • Using user-defined java-doc tags

    Dependencies

    • What is a dependency
    • Understanding the concept artefact repository
    • What is transitive dependency
    • How to search for 3rd party libraries (JARs)
    • Maven coordinates
    • Configuring dependencies
    • Scopes
    • Using non-standard repositories
    • The local Maven cache
    • Installing JARs to the local cache and why it is useful

    Testing

    • Setting up test source directories
    • Loading resource files from teh class path
    • Running tests
    • Surpressing tests
    • Test result reports

    Sub-Projects

    • The single project artefact principle
    • Parent POM
    • Child POM
    • Running recursive Maven build commands

    Web Applications

    • Web app directory structure
    • Web POM
    • Building WAR artefacts
    • Running a WAR file

    Site and Reports

    • Directory content
    • Almost Plain Text and other markup formats
    • Reports
    • Report plugins
    • Site descriptor
    • Generating a site

    Proxy and Artefact Servers

    • What is a Maven proxy server
    • What is a Maven artefact server
    • Available Maven servers
    • Configuring Maven to use a proxy server
    • Deploying to an internal artefact server
    Facts
    NameMaven
    Duration 1 Days
    LevelBeginner
    AudienceJava programmers
    PrerequisitesFluent in Java programming
    Tools
    • Java JDK, version 8+
    • Apache Maven
    Price11 000 kr + moms 11000
    Course Dates
    DatePlace
    Loading course dates...
    Same-Company Discout

    We offer a 20% discount for additional participants from the same company and at the same course date. Read more here.

    On-Site Course

    If you order an On-Site course, we will come to you and hold the course in your office. The price is determined by our price model and is based on the number of course days, number of participants and any travel and lodging.

    Read more about out price modell and term of sales here.

    Related Courses
    CourseDaysLevel
    Gradle2Beginner Show
    Apache Ant1BeginnerShow