This talk presents part 1 of "MuleSoft, Maven and Managing Dependencies". It will provide the basic foundation of Maven in MuleSoft and its use in our day-to-day development lifecycle. We will learn to work with Maven, POM, and Super POM. We will also study how Maven is helping us manage dependencies with ease. This talk will have a basic POM demo.
Part 1 Topics:
What is Maven?
Maven's Objectives
Installation
Embedded Maven in Studio
What does Maven do?
Maven Build Lifecycle
Default Lifecycle Phases
POM
Minimal POM
Super POM
Creating a Maven-based project from the command prompt
Importing Maven based project in Anypoint Studio
Packaging Mule Application
maven clean plugin
mule maven plugin
maven resources plugin
maven compiler plugin
maven surefire plugin
Dependency Mechanism
6. 6
Organizers
Want to do a MuleSoft Meetup Talk? Reach out to our event organizers
Nicholas ip
Senior Consultant at
MuleSoft | MuleSoft
Meetup Leader
Ryan Andal
MuleSoft
Ambassador |
Architect | TOGAF®
9 | AWS | Azure |
Associate Manager -
MuleSoft at
Capgemini
Brian Fraser
MuleSoft
Ambassador and
Meetup Leader |
Senior Integration
Consultant and
Manager at
Capgemini
Fuguo Wei
Principal Integration
Architect at
Cloudwerx |
MuleSoft Mentor |
MuleSoft Meetup
Leader
7. 7
Sponsors
Check out our Sponsors
Capgemini
Capgemini is a global consulting and technology services company that
empowers businesses through comprehensive services, innovative solutions, and
a strong focus on digital transformation, helping them thrive in the digital age.
8. 8
Speakers
Want to know more about our speakers? Check them out.
Gaurav Dubey
● MuleSoft Developer at Capgemini
● MuleSoft Mentor and MuleSoft Meetup Leader in both Nagpur and Goa
● 10+ years of experience in IT with human first approach.
10. 10
● Maven is a tool that can be used for building and managing any
Java-based project
What is Maven?
11. 11
● Make the build process easy
● Provide a uniform build system
● Provide quality project information
● Encourage better development practices
Maven’s Objectives
12. 12
● Yes
● No
Do we need to install Maven while working with
MuleSoft?
19. 19
● validate : validate the project is correct and all necessary
information is available
● compile : compile the source code of the project
Default Lifecycle Phases
20. 20
● test : test the compiled source code using a suitable unit
testing framework. These tests should not require
the code be packaged or deployed
● package : take the compiled code and package it in its
distributable format, such as a JAR
Default Lifecycle Phases
21. 21
● verify : run any checks on results of integration tests to
ensure quality criteria are met
● install : install the package into the local repository, for use
as a dependency in other projects locally
Default Lifecycle Phases
22. 22
● deploy : done in the build environment, copies the final
package to the remote repository for sharing with
other developers and projects.
Default Lifecycle Phases
27. 27
● POM is a fundamental unit of work in Maven
● It is an XML file that contains information about the project and
configuration details used by Maven to build the project
Project Object Model
28. 28
● project – root
● modelVersion – should be set to 4.0.0
● groupId – the id of the project’s group
● artifactId – the id of the artifact (project)
● version – the version of the artifact under the specified group
Minimal POM
44. 44
● It contains maven build configuration that are not specific to a mule
application
● It has below advantages
○ Reduce redundancy
○ Minimize conflicting versions
○ Streamline dependency upgrade process
Parent POM