Video description
Take your Java application development skills to the next level by mastering Apache Maven concepts
About This Video
- Find out why Apache Maven is an excellent choice as a Java build tool
- Learn how to create Apache Maven projects from scratch
- Discover how to use Maven with popular alternative Java Virtual Machine (JVM) languages, such as Groovy, Kotlin, and Scala
In Detail
Apache Maven is the most popular Java build tool used by over 70% of the Java organizations. Do you want to gain knowledge of Apache Maven to manage your Java applications successfully? This course will help you to develop Apache Maven skills and show you the best practices to build, test, manage, and deploy Java projects.
The course starts with an introduction to Apache Maven, explaining the installation process and highlighting its uses in the real-world. Next, you will use Maven to build and package Java projects and to run unit and integration tests written in JUnit, TestNG, and Spock. Moving along, you will generate source code from the Extensible Markup Language (XML) and JavaScript Object Notation (JSON) schemas and get to grips with the concepts of the Apache Maven plug-in. Next, you will build the Spring Boot applications with Apache Maven and learn the techniques to improve the code quality. Later, you will develop multi-module Maven projects, deploy project artifacts to Maven repositories, and learn how to use Maven build profiles. Finally, you will use the Maven release plug-in to perform releases and discover enterprise dependency management using Bills of Materials (BOMs).
By the end of this course, you will have gained the essential Apache Maven skills needed to build, test, manage, and deploy Java applications.
Who this book is for
This course is for Java developers, DevOps engineers, technical managers, and Quality assurance (QA) engineers, who are looking to build, test, manage, and deploy Java applications using Apache Maven. Basic knowledge of Java programming is needed to get started with this course.
Table of contents
- Chapter 1 : Apache Maven Introduction
- Chapter 2 : Getting Started
- Chapter 3 : Compiling Java
- Chapter 4 : Getting Started with Maven
- Chapter 5 : Maven Basics
- Chapter 6 : Common Maven Plug-ins
-
Chapter 7 : Generating Source with Maven
- Introduction
- XML Schema Definition (XSD) to Java with Maven
- Assignment – Cleaning the JAXB Project Automatically
- Assignment Review - Cleaning the JAXB Project Automatically
- Using Maven to Generate Java Classes from the JavaScript Object Notation (JSON) Schema
- Challenge - Creating a Lombok Project with Maven
- Generating Java Classes with Project Lombok and Maven
- Challenge – Creating a MapStruct Project with Maven
- Generating Java Classes with MapStruct and Maven
- Conclusion
- Chapter 8 : Alternate JVM Languages
-
Chapter 9 : Testing with Maven
- Introduction
- Overview of Testing with Maven
- Using Maven Surefire for the Plain Old Java Object (POJO) Unit Tests
- Using Maven Surefire for JUnit 4 Unit Tests
- Using Maven Surefire for JUnit 5 Unit Tests
- Using Maven Surefire for JUnit 4 and JUnit 5 Tests
- Assignment: Adding Groovy and JUnit 4 Support to a Maven Project
- Assignment Review
- Using Maven Surefire for Spock Tests
- Challenge: Use JUnit 5 with Spock
- Using Spock with JUnit 5
- Using Maven Surefire for TestNG Unit Tests
- Generating Test Reports with Maven
- Running Integration Tests with Maven Failsafe
- Code Coverage with JaCoCo
- Maven SpotBugs Report
- Setting a Maven Version in IntelliJ
- Assignment - Fixing a Broken Maven Project
- Assignment Review
- Skipping the Unit and Integration Tests in Maven
- Conclusion
-
Chapter 10 : Multi-Module Projects
- Introduction
- Overview of Multi-Module Projects
- Creating a Parent Project
- Creating a Project Module for Entities
- Using IntelliJ to Create a New Maven Module
- Assignment - Adding Module for API Model Using XML
- Assignment Review - Adding a Project Module for API Model
- Maven Dependencies between Modules
- Assignment - Adding Module for the MapStruct Converters
- Assignment Review – Adding the MapStruct Module
- Setting a Version Using Maven Property
- Maven Flatten Plug-in
- Maven Enforcer Plug-in
- Assignment - Repairing a Multi-Module Maven Project
- Assignment Review – Repairing a Multi-Module Maven Project
- Overview of Maven Bill of Materials (BOM)
- Example of Maven Bill of Materials (BOM)
- Conclusion
-
Chapter 11 : Apache Maven for Spring Boot
- Introduction
- Spring Boot Parent Project Object Model (POM) and Bill of Materials (BOM)
- Creating a Project with Spring Initializr
- Spring Boot Starter Dependencies
- Spring Boot Fat JAR
- Running Spring Boot from Maven
- Spring Boot Integration Tests with the Maven Failsafe Plug-in
- Generating Build Information with Maven
- Adding Git Information to Maven Build
- Multi-Module Spring Boot Projects
- Assignment - Creating a Spring Boot Multi-Module Project
- Assignment Review - Creating Spring Boot Multi-Module Project
- Conclusion
-
Chapter 12 : Maven Repositories
- Introduction to Maven Repositories
- Configuring of Maven Repositories
- Configuring Mirror Repository in settings.xml
- Common Public Maven Repositories
- Using JBoss Repository
- Introduction to Maven Settings
- Assignment - Adding the JBoss Repository to setting.xml
- Assignment Review – Adding the JBoss Repository to setting.xml
- Using Spring Repositories
- Installing Dependencies Manually
- Overview - Using the Oracle Maven Repository
- Configuring the Maven Master Password
- Configuring Maven for Oracle Maven Repository
- Conclusion
- Chapter 13 : Deploying to the Maven Projects to Packagecloud
- Chapter 14 : Deploying the Apache Maven Projects to Nexus
- Chapter 15 : Maven Build Profiles
-
Chapter 16 : Maven Release Plug-in
- Introduction
- Overview of the Maven Release Process
- Configuring Maven Supply chain management (SCM)
- Configuring Maven Release Plug-in
- Maven Release Prepare and Perform
- Maven Release Rollback
- Example of Maven Release Error
- Maven Release Dry Run
- Configuring CircleCI
- Deploy CircleCI to Packagecloud
- Releasing CircleCI to Packagecloud
- Conclusion
-
Chapter 17 : Maven in the Real World
- Introduction
- Overview of Projects
- Reviewing the Spring Cloud Contract
- Reviewing the Spring Cloud Contract for OpenAPI
- Example of a Spring Cloud Contract Fraud in OpenAPI
- Example - Payor Service
- Resolving Dependency Conflicts
- Developing with Snapshot Versions
- Deploying to Maven Central
- Upgrading the Dependent Projects to Release Version
-
Chapter 18 : Enterprise Dependency Management
- Introduction
- Maven Bill of Materials (BOM)
- Creating Maven Bill of Materials (BOM)
- Setting Common Properties in Maven Bill of Materials (BOM)
- Maven Bill of Materials (BOM) Dependency Management
- Maven Bill of Materials (BOM) Common Dependencies
- Maven Bill of Materials (BOM) Common Build Plug-ins
- Maven Enforcer Build Plug-in
- Configuring Beer Service Parent Bill of Materials (BOM)
- Assignment - Updating Services to Use Bill of Materials (BOM)
- Assignment Review
- Using Released Bills of Materials (BOMs)
- Assignment - Updating Services to use Release Bill of Materials (BOM)
- Assignment Review
- IntelliJ Workspace - Tips and Tricks
- Conclusion
Product information
- Title: Apache Maven: Beginner to Guru
- Author(s):
- Release date: May 2019
- Publisher(s): Packt Publishing
- ISBN: 9781838983031
You might also like
video
Learn Spring Boot 3 in 100 Steps - Beginner to Expert
Spring Boot is a powerful framework that simplifies the development of REST services. It enables developers …
video
The Complete Java Developer Course: From Beginner to Master
Be it websites, mobile apps, or desktop software, Java remains one of the most popular programming …
video
Git and GitHub: The Complete Git and GitHub Course
If you create websites, web applications, or mobile apps, or write any code, using a version …
video
Complete Git Guide: Understand and Master Git and GitHub
Complete with practical activities, this comprehensive Git and GitHub guide will help you understand how Git …