SlideShare a Scribd company logo
Copyright @ 2015 Learntek. All Rights Reserved. 1
What is Maven?
Copyright @ 2018 Learntek. All Rights Reserved. 3
What is Maven?
Maven is an automation and management tool developed by Apache Software
Foundation. It was initially released on 13 July 2004. In Yiddish language the meaning
of Maven is “accumulator of knowledge”. Maven is a project management and
comprehension tool that provides developers a complete build life-cycle framework.
Development team can automate the project’s build infrastructure in almost no time
as Maven uses a standard directory layout and a default build life-cycle. Maven is a
powerful project management tool that is based on POM (project object model). It is
used for projects build, dependency and documentation. It simplifies the build
process like ANT. But it is too much advanced than ANT. Maven includes project
information and configuration information for Maven such as construction directory,
source directory, dependency, test source directory, Goals, plugins, etc.
Copyright @ 2018 Learntek. All Rights Reserved. 4
What are the key features of Maven?
• Simple project setup that follows best practices
• Consistent usage across all projects
• Easy way to build projects in which unnecessary details are hidden
• Uniform build system, where a standard strategy is followed
• Dependency management including automatic updating
• Quality project information, such as dependency lists, cross referenced sources and
unit test reports
• Dependency management, including automatic updating and dependency closures
• The ability to handle multiple projects simultaneously
• Dynamic downloading of necessary Java libraries and plug-ins from Maven
repositories
Copyright @ 2018 Learntek. All Rights Reserved. 5
Model-based builds − Maven is able to build any number of projects into predefined
output types such as jar, war, metadata
Coherent site of project information − Using the same metadata as per the build
process, maven is able to generate a website and a PDF including complete
documentation
Backward Compatibility – You can easily port the multiple modules of a project into
Maven 3 from older versions of Maven. It can support the older versions also
Parallel builds − It analyses the project dependency graph and enables you to build
schedule modules in parallel. Using this, you can achieve the performance
improvements of 20-50%.
What are the core concepts of Maven?
• Build Plugins: Build plugins are used to perform specific goal. You can add a plugin
to the POM file. Maven has some standard plugins you can use, and you can also
implement your own in Java.
Copyright @ 2018 Learntek. All Rights Reserved. 6
• Build Profiles: Build profiles a set of configuration values which allows you to build
your project using different configurations. For example, you may need to build your
project for your local computer, for development and test. To enable different builds
you can add different build profiles to your POM files using its profiles elements and
are triggered in the variety of ways.
• POM Files: Project Object Model (POM) Files are XML file that contains information
related to the project and configuration information such as dependencies, source
directory, plugin, and goals etc. used by Maven to build the project. When you
should execute a maven command you give maven a POM file to execute the
commands. Maven reads pom.xml file to accomplish its configuration and
operations.
Copyright @ 2018 Learntek. All Rights Reserved. 7
• Dependencies and Repositories: Dependencies are external Java libraries required
for Project and repositories are directories of packaged JAR files. The local
repository is just a directory on your machine hard drive. If the dependencies are
not found in the local Maven repository, Maven downloads them from a central
Maven repository and puts them in your local repository.
• Build Life Cycles, Phases and Goals: A build life cycle consists of a sequence of
build phases, and each build phase consists of a sequence of goals. Maven
command is the name of a build life-cycle, phase or goal. If a life-cycle is requested
executed by giving maven command, all build phases in that life cycle are executed
also. If a build phase is requested executed, all build phases before it in the defined
sequence are executed too.
Copyright @ 2018 Learntek. All Rights Reserved. 8
What maven does?
Below are the task performed by Maven:
• We can easily build a project using maven.
• We can add jars and other dependencies of the project easily using the help of
maven.
• Maven provides project information (log document, dependency list, unit test
reports etc.)
• Maven is very helpful for a project while updating central repository of JAR’s and
other dependencies.
• With the help of Maven we can build any number of projects into output types like
the JAR, WAR etc without doing any scripting.
• Using maven we can easily integrate our project with source control system (such
as Subversion or Git).
Copyright @ 2018 Learntek. All Rights Reserved. 9
Advantages of using Maven:
• Maven can add all the dependencies required for the project automatically by
reading pom file.
• One can easily build their project to jar,war etc. as per their requirements using
Maven.
• Maven makes easy to start project in different environments and one doesn’t needs
to handle the dependencies injection, builds, processing, etc.
• Adding a new dependency is very easy. One has to just write the dependency code
in pom file.
Disadvantages of using Maven:
• Maven needs the maven installation in the system for working and maven plugin
for the ide.
• If the maven code for an existing dependency is not available, then one cannot add
that dependency using maven.
Copyright @ 2018 Learntek. All Rights Reserved. 10
Summary:
Maven is an automation and management tool. Maven is a popular open source build
tool for enterprise Java projects, designed to take much of the hard work out of the
build process. Maven uses a declarative approach, where the project structure and
contents are described, rather than the task-based approach used in Ant or in
traditional make files, for example. This helps enforce company-wide development
standards and reduces the time needed to write and maintain build scripts. When you
use Maven, you describe your project using a well-defined project object model,
Maven can then apply cross-cutting logic from a set of shared (or custom) plugins. In
case of multiple development teams environment, Maven can set-up the way to work
as per standards in a very short time. As most of the project setups are simple and
reusable, Maven makes life of developer easy while creating reports, checks, build and
testing automation setups.
Copyright @ 2018 Learntek. All Rights Reserved. 11
For more Training Information , Contact Us
Email : info@learntek.org
USA : +1734 418 2465
INDIA : +40 4018 1306
+7799713624

More Related Content

What's hot

Maven in mulesoft - part 2
Maven in mulesoft - part 2Maven in mulesoft - part 2
Maven in mulesoft - part 2
venkata20k
 
System Architecture using Maven Modularity
System Architecture using Maven ModularitySystem Architecture using Maven Modularity
System Architecture using Maven Modularity
Scheidt & Bachmann
 
Introduction to Maven
Introduction to MavenIntroduction to Maven
Introduction to Maven
Onkar Deshpande
 
Maven
Maven Maven
Maven
Khan625
 
Introduction to maven
Introduction to mavenIntroduction to maven
Introduction to maven
Manos Georgopoulos
 
An Introduction to Maven
An Introduction to MavenAn Introduction to Maven
An Introduction to MavenVadym Lotar
 
Maven Presentation - SureFire vs FailSafe
Maven Presentation - SureFire vs FailSafeMaven Presentation - SureFire vs FailSafe
Maven Presentation - SureFire vs FailSafeHolasz Kati
 
Maven in mulesoft
Maven in mulesoftMaven in mulesoft
Maven in mulesoft
venkata20k
 
Build Tools & Maven
Build Tools & MavenBuild Tools & Maven
Build Tools & Maven
David Simons
 
(Re)-Introduction to Maven
(Re)-Introduction to Maven(Re)-Introduction to Maven
(Re)-Introduction to Maven
Eric Wyles
 
Ready! Steady! SpringBoot!
Ready! Steady! SpringBoot! Ready! Steady! SpringBoot!
Ready! Steady! SpringBoot!
GlobalLogic Ukraine
 
Maven
MavenMaven
4 Outcomes of an Advanced Repo Manager Strategy
4 Outcomes of an Advanced Repo Manager Strategy4 Outcomes of an Advanced Repo Manager Strategy
4 Outcomes of an Advanced Repo Manager Strategy
Sonatype
 
Maven overview
Maven overviewMaven overview
Maven overview
Yukti Kaura
 
Sonar qube
Sonar qubeSonar qube
Sonar qube
penetration Tester
 
Working with Maven in Eclipse
Working with Maven in EclipseWorking with Maven in Eclipse
Working with Maven in Eclipse
Fred Bricon
 
Maven basics
Maven basicsMaven basics
Development Process Optimization Using Docker. Based on a True Story
Development Process Optimization Using Docker. Based on a True StoryDevelopment Process Optimization Using Docker. Based on a True Story
Development Process Optimization Using Docker. Based on a True Story
GlobalLogic Ukraine
 

What's hot (20)

Maven in mulesoft - part 2
Maven in mulesoft - part 2Maven in mulesoft - part 2
Maven in mulesoft - part 2
 
Maven
MavenMaven
Maven
 
System Architecture using Maven Modularity
System Architecture using Maven ModularitySystem Architecture using Maven Modularity
System Architecture using Maven Modularity
 
Introduction to Maven
Introduction to MavenIntroduction to Maven
Introduction to Maven
 
Maven
Maven Maven
Maven
 
Introduction to maven
Introduction to mavenIntroduction to maven
Introduction to maven
 
An Introduction to Maven
An Introduction to MavenAn Introduction to Maven
An Introduction to Maven
 
Maven Presentation - SureFire vs FailSafe
Maven Presentation - SureFire vs FailSafeMaven Presentation - SureFire vs FailSafe
Maven Presentation - SureFire vs FailSafe
 
Maven in mulesoft
Maven in mulesoftMaven in mulesoft
Maven in mulesoft
 
Build Tools & Maven
Build Tools & MavenBuild Tools & Maven
Build Tools & Maven
 
(Re)-Introduction to Maven
(Re)-Introduction to Maven(Re)-Introduction to Maven
(Re)-Introduction to Maven
 
Jenkins
JenkinsJenkins
Jenkins
 
Ready! Steady! SpringBoot!
Ready! Steady! SpringBoot! Ready! Steady! SpringBoot!
Ready! Steady! SpringBoot!
 
Maven
MavenMaven
Maven
 
4 Outcomes of an Advanced Repo Manager Strategy
4 Outcomes of an Advanced Repo Manager Strategy4 Outcomes of an Advanced Repo Manager Strategy
4 Outcomes of an Advanced Repo Manager Strategy
 
Maven overview
Maven overviewMaven overview
Maven overview
 
Sonar qube
Sonar qubeSonar qube
Sonar qube
 
Working with Maven in Eclipse
Working with Maven in EclipseWorking with Maven in Eclipse
Working with Maven in Eclipse
 
Maven basics
Maven basicsMaven basics
Maven basics
 
Development Process Optimization Using Docker. Based on a True Story
Development Process Optimization Using Docker. Based on a True StoryDevelopment Process Optimization Using Docker. Based on a True Story
Development Process Optimization Using Docker. Based on a True Story
 

Similar to What is maven

Mavennotes.pdf
Mavennotes.pdfMavennotes.pdf
Mavennotes.pdf
AnkurSingh656748
 
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsSE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-Tools
Amr E. Mohamed
 
Build tool
Build toolBuild tool
Build tool
Mallikarjuna G D
 
software technology benchmarking
software  technology benchmarkingsoftware  technology benchmarking
software technology benchmarking
Mallikarjuna G D
 
Introduction to Spring & Spring BootFramework
Introduction to Spring  & Spring BootFrameworkIntroduction to Spring  & Spring BootFramework
Introduction to Spring & Spring BootFramework
Kongu Engineering College, Perundurai, Erode
 
An Introduction to Maven Part 1
An Introduction to Maven Part 1An Introduction to Maven Part 1
An Introduction to Maven Part 1
MD Sayem Ahmed
 
A-Z_Maven.pdf
A-Z_Maven.pdfA-Z_Maven.pdf
A-Z_Maven.pdf
Mithilesh Singh
 
Maven
MavenMaven
Maven Introduction
Maven IntroductionMaven Introduction
Maven Introduction
Sandeep Chawla
 
Maven 2 features
Maven 2 featuresMaven 2 features
Maven 2 features
Angel Ruiz
 
Jenkins advance topic
Jenkins advance topicJenkins advance topic
Jenkins advance topic
Gourav Varma
 
Maven
MavenMaven
Maven
Emprovise
 
Top Java Frameworks.pdf
Top Java Frameworks.pdfTop Java Frameworks.pdf
Top Java Frameworks.pdf
SudhanshiBakre1
 
Ci jenkins maven svn
Ci jenkins maven svnCi jenkins maven svn
Ci jenkins maven svn
Ankur Goyal
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
Mert Çalışkan
 
Devops
DevopsDevops
Devops
JyothirmaiG4
 
Top Maven Interview Questions in 2020 | Edureka
Top Maven Interview Questions in 2020 | EdurekaTop Maven Interview Questions in 2020 | Edureka
Top Maven Interview Questions in 2020 | Edureka
Edureka!
 
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Martin Bergljung
 

Similar to What is maven (20)

Mavennotes.pdf
Mavennotes.pdfMavennotes.pdf
Mavennotes.pdf
 
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsSE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-Tools
 
Build tool
Build toolBuild tool
Build tool
 
software technology benchmarking
software  technology benchmarkingsoftware  technology benchmarking
software technology benchmarking
 
Introduction to Spring & Spring BootFramework
Introduction to Spring  & Spring BootFrameworkIntroduction to Spring  & Spring BootFramework
Introduction to Spring & Spring BootFramework
 
An Introduction to Maven Part 1
An Introduction to Maven Part 1An Introduction to Maven Part 1
An Introduction to Maven Part 1
 
A-Z_Maven.pdf
A-Z_Maven.pdfA-Z_Maven.pdf
A-Z_Maven.pdf
 
Maven
MavenMaven
Maven
 
Maven
MavenMaven
Maven
 
Maven
MavenMaven
Maven
 
Maven Introduction
Maven IntroductionMaven Introduction
Maven Introduction
 
Maven 2 features
Maven 2 featuresMaven 2 features
Maven 2 features
 
Jenkins advance topic
Jenkins advance topicJenkins advance topic
Jenkins advance topic
 
Maven
MavenMaven
Maven
 
Top Java Frameworks.pdf
Top Java Frameworks.pdfTop Java Frameworks.pdf
Top Java Frameworks.pdf
 
Ci jenkins maven svn
Ci jenkins maven svnCi jenkins maven svn
Ci jenkins maven svn
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
 
Devops
DevopsDevops
Devops
 
Top Maven Interview Questions in 2020 | Edureka
Top Maven Interview Questions in 2020 | EdurekaTop Maven Interview Questions in 2020 | Edureka
Top Maven Interview Questions in 2020 | Edureka
 
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
Alfresco DevCon 2018: SDK 3 Multi Module project using Nexus 3 for releases a...
 

More from sureshraj43

Apache kafka
Apache kafkaApache kafka
Apache kafka
sureshraj43
 
Ansible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation toolAnsible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation tool
sureshraj43
 
Machine learning and pattern recognition
Machine learning and pattern recognitionMachine learning and pattern recognition
Machine learning and pattern recognition
sureshraj43
 
Python datetime
Python datetimePython datetime
Python datetime
sureshraj43
 
Polymorphism in java
Polymorphism in javaPolymorphism in java
Polymorphism in java
sureshraj43
 
Business analyst tools
Business analyst toolsBusiness analyst tools
Business analyst tools
sureshraj43
 

More from sureshraj43 (6)

Apache kafka
Apache kafkaApache kafka
Apache kafka
 
Ansible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation toolAnsible: Simple yet powerful IT automation tool
Ansible: Simple yet powerful IT automation tool
 
Machine learning and pattern recognition
Machine learning and pattern recognitionMachine learning and pattern recognition
Machine learning and pattern recognition
 
Python datetime
Python datetimePython datetime
Python datetime
 
Polymorphism in java
Polymorphism in javaPolymorphism in java
Polymorphism in java
 
Business analyst tools
Business analyst toolsBusiness analyst tools
Business analyst tools
 

Recently uploaded

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 

What is maven

  • 1. Copyright @ 2015 Learntek. All Rights Reserved. 1
  • 3. Copyright @ 2018 Learntek. All Rights Reserved. 3 What is Maven? Maven is an automation and management tool developed by Apache Software Foundation. It was initially released on 13 July 2004. In Yiddish language the meaning of Maven is “accumulator of knowledge”. Maven is a project management and comprehension tool that provides developers a complete build life-cycle framework. Development team can automate the project’s build infrastructure in almost no time as Maven uses a standard directory layout and a default build life-cycle. Maven is a powerful project management tool that is based on POM (project object model). It is used for projects build, dependency and documentation. It simplifies the build process like ANT. But it is too much advanced than ANT. Maven includes project information and configuration information for Maven such as construction directory, source directory, dependency, test source directory, Goals, plugins, etc.
  • 4. Copyright @ 2018 Learntek. All Rights Reserved. 4 What are the key features of Maven? • Simple project setup that follows best practices • Consistent usage across all projects • Easy way to build projects in which unnecessary details are hidden • Uniform build system, where a standard strategy is followed • Dependency management including automatic updating • Quality project information, such as dependency lists, cross referenced sources and unit test reports • Dependency management, including automatic updating and dependency closures • The ability to handle multiple projects simultaneously • Dynamic downloading of necessary Java libraries and plug-ins from Maven repositories
  • 5. Copyright @ 2018 Learntek. All Rights Reserved. 5 Model-based builds − Maven is able to build any number of projects into predefined output types such as jar, war, metadata Coherent site of project information − Using the same metadata as per the build process, maven is able to generate a website and a PDF including complete documentation Backward Compatibility – You can easily port the multiple modules of a project into Maven 3 from older versions of Maven. It can support the older versions also Parallel builds − It analyses the project dependency graph and enables you to build schedule modules in parallel. Using this, you can achieve the performance improvements of 20-50%. What are the core concepts of Maven? • Build Plugins: Build plugins are used to perform specific goal. You can add a plugin to the POM file. Maven has some standard plugins you can use, and you can also implement your own in Java.
  • 6. Copyright @ 2018 Learntek. All Rights Reserved. 6 • Build Profiles: Build profiles a set of configuration values which allows you to build your project using different configurations. For example, you may need to build your project for your local computer, for development and test. To enable different builds you can add different build profiles to your POM files using its profiles elements and are triggered in the variety of ways. • POM Files: Project Object Model (POM) Files are XML file that contains information related to the project and configuration information such as dependencies, source directory, plugin, and goals etc. used by Maven to build the project. When you should execute a maven command you give maven a POM file to execute the commands. Maven reads pom.xml file to accomplish its configuration and operations.
  • 7. Copyright @ 2018 Learntek. All Rights Reserved. 7 • Dependencies and Repositories: Dependencies are external Java libraries required for Project and repositories are directories of packaged JAR files. The local repository is just a directory on your machine hard drive. If the dependencies are not found in the local Maven repository, Maven downloads them from a central Maven repository and puts them in your local repository. • Build Life Cycles, Phases and Goals: A build life cycle consists of a sequence of build phases, and each build phase consists of a sequence of goals. Maven command is the name of a build life-cycle, phase or goal. If a life-cycle is requested executed by giving maven command, all build phases in that life cycle are executed also. If a build phase is requested executed, all build phases before it in the defined sequence are executed too.
  • 8. Copyright @ 2018 Learntek. All Rights Reserved. 8 What maven does? Below are the task performed by Maven: • We can easily build a project using maven. • We can add jars and other dependencies of the project easily using the help of maven. • Maven provides project information (log document, dependency list, unit test reports etc.) • Maven is very helpful for a project while updating central repository of JAR’s and other dependencies. • With the help of Maven we can build any number of projects into output types like the JAR, WAR etc without doing any scripting. • Using maven we can easily integrate our project with source control system (such as Subversion or Git).
  • 9. Copyright @ 2018 Learntek. All Rights Reserved. 9 Advantages of using Maven: • Maven can add all the dependencies required for the project automatically by reading pom file. • One can easily build their project to jar,war etc. as per their requirements using Maven. • Maven makes easy to start project in different environments and one doesn’t needs to handle the dependencies injection, builds, processing, etc. • Adding a new dependency is very easy. One has to just write the dependency code in pom file. Disadvantages of using Maven: • Maven needs the maven installation in the system for working and maven plugin for the ide. • If the maven code for an existing dependency is not available, then one cannot add that dependency using maven.
  • 10. Copyright @ 2018 Learntek. All Rights Reserved. 10 Summary: Maven is an automation and management tool. Maven is a popular open source build tool for enterprise Java projects, designed to take much of the hard work out of the build process. Maven uses a declarative approach, where the project structure and contents are described, rather than the task-based approach used in Ant or in traditional make files, for example. This helps enforce company-wide development standards and reduces the time needed to write and maintain build scripts. When you use Maven, you describe your project using a well-defined project object model, Maven can then apply cross-cutting logic from a set of shared (or custom) plugins. In case of multiple development teams environment, Maven can set-up the way to work as per standards in a very short time. As most of the project setups are simple and reusable, Maven makes life of developer easy while creating reports, checks, build and testing automation setups.
  • 11. Copyright @ 2018 Learntek. All Rights Reserved. 11 For more Training Information , Contact Us Email : info@learntek.org USA : +1734 418 2465 INDIA : +40 4018 1306 +7799713624