SlideShare a Scribd company logo
June 25, 2017 www.snipe.co.in 1
Prepared :Mallikarjuna G D
Email: gdmallikarjuna@gmail.com
June 25, 2017 2
Build Tools
June 25, 2017 3
Agenda
•Ant Overview
- what is ant
- Features of Ant
- Why Ant?
- Ant History
• Maven Overview
- What is Maven
-Features Maven
-Why Maven?
-Maven History
• Difference B/W Ant and Maven
June 25, 2017 4
Ant Overview
• What is Ant ?
•Apache Ant is a software tool for automating software build
processes
 
•It was a replacement for the Unix make build tool, It is similar
to Make but is implemented using the java language, requires the Java
platform, and is best suited to building Java projects.
• Developed by Apache Tomcat and released as Open Source
• Allows writing managed code in Java Language
June 25, 2017 5
Ant Features
• Features of Ant
• Ant is the most complete Java build and deployment tool available.
•Ant scripts are written using plain XML.
• Ant is good at automating complicated repetitive tasks.
• Ant comes with a big list of predefined tasks.
•Ant provides an interface to develop custom tasks.
•Ant can be easily invoked from the command line and it can integrate with
free and commercial IDEs.
June 25, 2017 6
Ant Overview
• Features of Ant(cont.)
•Nightly + Continuous Builds
Nightly
•We don't provide binary nightly builds at the moment.
Continuous Builds
•Ant and Ivy are using Continuous Integrations systems to improve
the development process. Note that these are no official builds and
they are not endorsed or even supported by the Ant team. But if you
have problems with testing the latest (successful) build, you are
welcome to post that on the developer mailing list
June 25, 2017 7
Ant Overview
• Why Ant ?
•Creating the basic structure for project, which is required for deployment. The structure
may vary from project to project or depending upon the type of application
•Taking the latest checkout of the project files from any source code version system
•Copying the required set of files to the desired directories. This may include filtering of
the files which are not required in deployment, but are required only for development.
 
•Compiling the source code to generate output run able files
•Generating the documentation by using various tools like Java Doc or PHP Documenter. 
June 25, 2017 8
Pro Ant
• Pros of Using Ant
•You control everything, because you have to largely build it yourself
(though you can copy and paste).
• Easy to ad support for legacy builds.
• Ant is a programming language (almost) so you can do crazy things,
but it requires much more debugging 
June 25, 2017 9
Con Ant
• Cons of using Ant
•IDE integration doesn't seem to be as well done. Running your ant
scripts with *every build* requires more setup and configuration, and
generally on every machine.
• Its no longer the standard, and many projects which are mavenized
are much easier to use via maven than downloading the jar and getting
it into your lib. then doing wire up via ant.
June 25, 2017 10
Maven Overview
• What is Maven ?
• Apache Maven is a popular open source tool that offers a convention-over-
configuration approach to project build management. It has been increasing its
presence across enterprises at a fast pace.
 
•Maven brings a lot of structure, discipline, and cross project capabilities to the
build management process.
•The heart of a Maven project is the Project Object Model (POM). It contains a
detailed description of your project, including information about versioning and
configuration management, dependencies, application and testing resources  and
structure, and much more. The POM takes the form of an XML file (pom.xml),
which is placed in the project home directory.
•Current version of Maven is 3.
June 25, 2017 11
Maven Overview
• Understanding the problem without Maven
There are many problems that we face during the project development. They are
discussed below:
• Adding set of Jars in each project: In case of struts, spring, hibernate
frameworks, we need to add set of jar files in each project. It must include
all the dependencies of jars also.
• Creating the right project structure: We must create the right project
structure in servlet, struts etc, otherwise it will not be executed.
•Building and Deploying the project: We must have to build and deploy the
project so that it may work.
June 25, 2017 12
Maven Features
• Features of Maven
• Simple project setup that follows best practices - get a new project or module
started in seconds
•Consistent usage across all projects means no ramp up time for new developers
coming onto a project
•Able to easily work with multiple projects at the same time
•A large and growing repository of libraries and metadata to use out of the box,
and arrangements in place with the largest Open Source projects for real-time
availability of their latest releases
•Extensible, with the ability to easily write plugins in Java or scripting languages
June 25, 2017 13
Maven Features
• Features of Maven (cont.)
•Extensible, with the ability to easily write plugins in Java or scripting languages
•  One of the highlights of Maven  is Transitive Dependency Management. You do not have
to declare each and every JAR that will be needed, directly or indirectly, by your
application. You just tell Maven which libraries you need, and Maven will take care of the
libraries that your libraries need.
•Instant access to new features with little or no extra configuration
•Model based builds: Maven is able to build any number of projects into predefined output
types such as a JAR, WAR, or distribution based on metadata about the project, without
the need to do any scripting in most cases.
June 25, 2017 14
Maven Lifecycle
• Standard Maven lifecycle phases:
Phase Description
Validate Runs a sanity check on the project itself.
Compile Compiles the project source code.
Test Runs the unit tests (typically using JUnit) .
Package Packages the compiled code in its distributable format
(JAR, WAR, etc.).
Verify Run checks to confirm that the package is valid.
Install Installs the package into the local repository for use
as a dependency in other projects on your local
machine.
Deploy Done in an integration or release environment, copies
the final package to the remote repository for sharing
with other developers and projects.
June 25, 2017 15
Pro Maven
• Pros of using Maven:
• All dependencies are downloaded automatically;
•All compile/build/dependency info is bundled with your maven spec, and
therefore forced to be in source control with your code. (this is a huge plus)
•Drastically simplifies the way your build will work, because every build follows
a generally standard procedure.
•Every member of your team will be building/deploying in the same way with
every compile.
•Turning on new features (such as junit) across the board for things like CI/CD
can be as easy as one line in your maven config file.
June 25, 2017 16
Pro Maven
• Pros of using Maven(cont.)
•Standard project structure. (which can be overridden)
•Setting up a project is really fast.
•Transitive dependencies and dependency management.
•Promotes modular design of code.
•Can generate reports and diagrams.
• Works well with distributed teams.
•Automated build of application.
•Promotes the concept of a resource repository.
June 25, 2017 17
Pro Maven
• Pros of using Maven(cont.)
• Use of remote repository.
• Has IDE support.
• When a project uses Maven, it means that anyone familiar with
Maven can pick up the build and start running  it without having to
fiddle with configuration just  to figure out how to get  the thing to
compile.
•Maven has a well defined life Cycle
June 25, 2017 18
Con Maven
• Cons of using Maven
• You need to know maven command line or use an ide that has maven integration, such
as netbeans or eclispe.
•Learning Curve (there are something like 20-26 different build phases, plus packaging
types).
•Your project pretty much has to be laid out the correct way, you can work around this
but you shouldn't.
•Its verbose and complex.
• If you have a dependent jar that isn't mavenized, you might lose your mind before you
figure out how to integrate it.
June 25, 2017 19
Comparison of Ant and Maven
•Difference between Ant and Maven
June 25, 2017 20
Comparison of Ant and Maven
•Difference between Ant and Maven(Cont.)
•One major difference between Maven and ANT is that Maven requires less configuration than ANT
because it works on principle of Convention over configuration
•Another significant difference between Maven and ANT is dependency Management.
•Third and most important difference between Maven and ANT is that, Maven offers a consistent and
common interface to build Java projects.
•Another technical difference between ANT and Maven is that ANT task doesn't have any lifecycle, you
need to define targets and there dependencies. While Maven has lifecycle, which is invoked when you run
commands like mvn install. Maven executes a series of steps as a result of this command to produce
artifacts e.g. JAR file.
June 25, 2017 21
Comparison of Ant and Maven
• Difference between Ant and Maven(Cont.)
•Maven also enforce a standard naming convention for artifacts
defined using groupId, artifactId and version. Also one more
difference between ANT and Maven is that, Maven is more than just
a build tool, it act as project management tool and can generate
reports etc, Though I have yet to use this feature.
June 25, 2017 22
• Difference between Ant and Maven
Ant Maven
Ant is basically a build tool. Maven is a build tool, a dependency
management tool and a reporting 
tool, intended to take Ant to the
next level. 
Ant doesn't have formal
conventions like a common project
directory structure.
Maven has conventions, it uses a
defined standard project directory
structure. In a way Maven tries to
dictate the project directory
structure.
Ant is procedural,  you have to tell
Ant exactly what to do and when to
do it. You have to tell it to compile,
then copy, then compress.
Maven is declarative. All you have
 to do is create a pom.xml file and
put your source in the default
directory. Maven takes care of the
rest.
Comparison of Ant and Maven
June 25, 2017 23
• Difference between Ant and Maven(Cont.)
Ant Maven
Ant does not provide facilities for
dependency management at all.
Though Ivy can be used in
conjunction with Ant for the same.
The real strength of Maven is its
dependency management.
Ant, by itself, doesn’t have a
facility for reusing build knowledge;
this is all encapsulated in the
build.xml file.
Reuse is achieved through the use
of plugins that become part of the
Maven installation library.
Ant is good at the low level. Maven is good at the high level. You
can run Ant tasks from within
Maven. You can even embed your
Ant scripts in the POM.
Comparison of Ant and Maven
June 25, 2017 24
• Difference between Ant and Maven(Cont.)
Ant Maven
Ant doesn't have a lifecycle, you
have to define goals and goal
dependencies.
Maven has a well defined lifecycle
The build environment is only as
portable as the person who designed
the build.xml forced it to be.
One can generally import a clean
Maven Project and build
immediately with no need to set up
a customized external build
environment.
No IDE Support. Has IDE  Support..
Excellent documentation available. Documentation is growing but still
inconsistent.
Comparison of Ant and Maven
June 25, 2017 25
Statistics
• Statistics
June 25, 2017 26
Conclusion
• Conclusion
• Maven is not just a build tool only. Building is just one of the
aspects. Maven plays a role during all the stages of the life-cycle of a
project.
June 25, 2017 27
Reference
• Reference
•http://ant.apache.org/
•http://maven.apache.org
•https://dzone.com/articles/maven-or-ant
•http://geekscontent.blogspot.in/2013/04/apache-maven.html#commen
June 25, 2017 28
Thank You

More Related Content

What's hot

Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic Multi-Cloud PaaS
 
Database migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseDatabase migrations with Flyway and Liquibase
Database migrations with Flyway and Liquibase
Lars Östling
 
Java on Azure
Java on AzureJava on Azure
Java on Azure
Philly JUG
 
Microservice architecture
Microservice architectureMicroservice architecture
Microservice architecture
Xavier Fornés Arrabal
 
Nuxeo platform in 15mn
Nuxeo platform in 15mnNuxeo platform in 15mn
Nuxeo platform in 15mn
Nuxeo
 
Gradle 2.breaking stereotypes.
Gradle 2.breaking stereotypes.Gradle 2.breaking stereotypes.
Gradle 2.breaking stereotypes.
Stfalcon Meetups
 
Continuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applicationsContinuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applications
Sunil Dalal
 
Database automated build and test - SQL In The City Cambridge
Database automated build and test - SQL In The City CambridgeDatabase automated build and test - SQL In The City Cambridge
Database automated build and test - SQL In The City Cambridge
Red Gate Software
 
Flyway: The agile database migration framework for Java
Flyway: The agile database migration framework for JavaFlyway: The agile database migration framework for Java
Flyway: The agile database migration framework for Java
Axel Fontaine
 
JavaOne 2015: 12 Factor App
JavaOne 2015: 12 Factor AppJavaOne 2015: 12 Factor App
JavaOne 2015: 12 Factor App
Joe Kutner
 
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Arun Gupta
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
Hùng Nguyễn Huy
 
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
Nuxeo
 
Spring Boot. Boot up your development. JEEConf 2015
Spring Boot. Boot up your development. JEEConf 2015Spring Boot. Boot up your development. JEEConf 2015
Spring Boot. Boot up your development. JEEConf 2015
Strannik_2013
 
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip KovačekJavantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
Testing Java EE Applications Using Arquillian
Testing Java EE Applications Using ArquillianTesting Java EE Applications Using Arquillian
Testing Java EE Applications Using Arquillian
Reza Rahman
 
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
Getting value from IoT, Integration and Data Analytics
 
KnowItPresentation
KnowItPresentationKnowItPresentation
KnowItPresentation
Chuan Su
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kit
D.Rajesh Kumar
 
Introducing Java 8
Introducing Java 8Introducing Java 8
Introducing Java 8
PT.JUG
 

What's hot (20)

Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015Jelastic - DevOps for Java with Docker Containers - Madrid 2015
Jelastic - DevOps for Java with Docker Containers - Madrid 2015
 
Database migrations with Flyway and Liquibase
Database migrations with Flyway and LiquibaseDatabase migrations with Flyway and Liquibase
Database migrations with Flyway and Liquibase
 
Java on Azure
Java on AzureJava on Azure
Java on Azure
 
Microservice architecture
Microservice architectureMicroservice architecture
Microservice architecture
 
Nuxeo platform in 15mn
Nuxeo platform in 15mnNuxeo platform in 15mn
Nuxeo platform in 15mn
 
Gradle 2.breaking stereotypes.
Gradle 2.breaking stereotypes.Gradle 2.breaking stereotypes.
Gradle 2.breaking stereotypes.
 
Continuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applicationsContinuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applications
 
Database automated build and test - SQL In The City Cambridge
Database automated build and test - SQL In The City CambridgeDatabase automated build and test - SQL In The City Cambridge
Database automated build and test - SQL In The City Cambridge
 
Flyway: The agile database migration framework for Java
Flyway: The agile database migration framework for JavaFlyway: The agile database migration framework for Java
Flyway: The agile database migration framework for Java
 
JavaOne 2015: 12 Factor App
JavaOne 2015: 12 Factor AppJavaOne 2015: 12 Factor App
JavaOne 2015: 12 Factor App
 
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
Lessons Learned from Real-World Deployments of Java EE 7 at JavaOne 2014
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
 
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
A Platform Approach to Enterprise Content Management with Eclipse Apricot, CM...
 
Spring Boot. Boot up your development. JEEConf 2015
Spring Boot. Boot up your development. JEEConf 2015Spring Boot. Boot up your development. JEEConf 2015
Spring Boot. Boot up your development. JEEConf 2015
 
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip KovačekJavantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
Javantura v4 - Spring Boot and JavaFX - can they play together - Josip Kovaček
 
Testing Java EE Applications Using Arquillian
Testing Java EE Applications Using ArquillianTesting Java EE Applications Using Arquillian
Testing Java EE Applications Using Arquillian
 
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
Oracle 12c Launch Event 02 ADF 12c and Maven in Jdeveloper / By Aino Andriessen
 
KnowItPresentation
KnowItPresentationKnowItPresentation
KnowItPresentation
 
Anypoint connector dev kit
Anypoint connector dev kitAnypoint connector dev kit
Anypoint connector dev kit
 
Introducing Java 8
Introducing Java 8Introducing Java 8
Introducing Java 8
 

Viewers also liked

Visual basics
Visual basicsVisual basics
Visual basics
Mallikarjuna G D
 
ETL
ETLETL
Ci
CiCi
Ejb
EjbEjb
Jdbc
JdbcJdbc
Maven
MavenMaven
Ide benchmarking
Ide benchmarkingIde benchmarking
Ide benchmarking
Mallikarjuna G D
 
Web services engine
Web services engineWeb services engine
Web services engine
Mallikarjuna G D
 
Project excursion career_orientation
Project excursion career_orientationProject excursion career_orientation
Project excursion career_orientation
Mallikarjuna G D
 
Training
TrainingTraining
Digital marketing
Digital marketingDigital marketing
Digital marketing
Mallikarjuna G D
 

Viewers also liked (11)

Visual basics
Visual basicsVisual basics
Visual basics
 
ETL
ETLETL
ETL
 
Ci
CiCi
Ci
 
Ejb
EjbEjb
Ejb
 
Jdbc
JdbcJdbc
Jdbc
 
Maven
MavenMaven
Maven
 
Ide benchmarking
Ide benchmarkingIde benchmarking
Ide benchmarking
 
Web services engine
Web services engineWeb services engine
Web services engine
 
Project excursion career_orientation
Project excursion career_orientationProject excursion career_orientation
Project excursion career_orientation
 
Training
TrainingTraining
Training
 
Digital marketing
Digital marketingDigital marketing
Digital marketing
 

Similar to Build tool

software technology benchmarking
software  technology benchmarkingsoftware  technology benchmarking
software technology benchmarking
Mallikarjuna G D
 
What is maven
What is mavenWhat is maven
What is maven
sureshraj43
 
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
 
Jenkins.pdf
Jenkins.pdfJenkins.pdf
Maven in mulesoft
Maven in mulesoftMaven in mulesoft
Maven in mulesoft
venkata20k
 
S/W Design and Modularity using Maven
S/W Design and Modularity using MavenS/W Design and Modularity using Maven
S/W Design and Modularity using Maven
Scheidt & Bachmann
 
Mavennotes.pdf
Mavennotes.pdfMavennotes.pdf
Mavennotes.pdf
AnkurSingh656748
 
Devops
DevopsDevops
Devops
JyothirmaiG4
 
Jenkins advance topic
Jenkins advance topicJenkins advance topic
Jenkins advance topic
Gourav Varma
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0
Jasmine Conseil
 
Ci jenkins maven svn
Ci jenkins maven svnCi jenkins maven svn
Ci jenkins maven svn
Ankur Goyal
 
Maven 2 features
Maven 2 featuresMaven 2 features
Maven 2 features
Angel Ruiz
 
Apache ANT vs Apache Maven
Apache ANT vs Apache MavenApache ANT vs Apache Maven
Apache ANT vs Apache Maven
Mudit Gupta
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
Simplilearn
 
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
 
Continous delivvery devops Tools Technologies.pptx
Continous delivvery devops Tools  Technologies.pptxContinous delivvery devops Tools  Technologies.pptx
Continous delivvery devops Tools Technologies.pptx
projectsasd125
 
Top 7 react developer tools to use in 2021
Top 7 react developer tools to use in 2021Top 7 react developer tools to use in 2021
Top 7 react developer tools to use in 2021
WrapPixel
 
A-Z_Maven.pdf
A-Z_Maven.pdfA-Z_Maven.pdf
A-Z_Maven.pdf
Mithilesh Singh
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
XPDays
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
shahidafrith
 

Similar to Build tool (20)

software technology benchmarking
software  technology benchmarkingsoftware  technology benchmarking
software technology benchmarking
 
What is maven
What is mavenWhat is maven
What is maven
 
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsSE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-Tools
 
Jenkins.pdf
Jenkins.pdfJenkins.pdf
Jenkins.pdf
 
Maven in mulesoft
Maven in mulesoftMaven in mulesoft
Maven in mulesoft
 
S/W Design and Modularity using Maven
S/W Design and Modularity using MavenS/W Design and Modularity using Maven
S/W Design and Modularity using Maven
 
Mavennotes.pdf
Mavennotes.pdfMavennotes.pdf
Mavennotes.pdf
 
Devops
DevopsDevops
Devops
 
Jenkins advance topic
Jenkins advance topicJenkins advance topic
Jenkins advance topic
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0
 
Ci jenkins maven svn
Ci jenkins maven svnCi jenkins maven svn
Ci jenkins maven svn
 
Maven 2 features
Maven 2 featuresMaven 2 features
Maven 2 features
 
Apache ANT vs Apache Maven
Apache ANT vs Apache MavenApache ANT vs Apache Maven
Apache ANT vs Apache Maven
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
 
Intelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest IstanbulIntelligent Projects with Maven - DevFest Istanbul
Intelligent Projects with Maven - DevFest Istanbul
 
Continous delivvery devops Tools Technologies.pptx
Continous delivvery devops Tools  Technologies.pptxContinous delivvery devops Tools  Technologies.pptx
Continous delivvery devops Tools Technologies.pptx
 
Top 7 react developer tools to use in 2021
Top 7 react developer tools to use in 2021Top 7 react developer tools to use in 2021
Top 7 react developer tools to use in 2021
 
A-Z_Maven.pdf
A-Z_Maven.pdfA-Z_Maven.pdf
A-Z_Maven.pdf
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
 

More from Mallikarjuna G D

Reactjs
ReactjsReactjs
Bootstrap 5 ppt
Bootstrap 5 pptBootstrap 5 ppt
Bootstrap 5 ppt
Mallikarjuna G D
 
CSS
CSSCSS
Angular 2.0
Angular  2.0Angular  2.0
Angular 2.0
Mallikarjuna G D
 
Spring andspringboot training
Spring andspringboot trainingSpring andspringboot training
Spring andspringboot training
Mallikarjuna G D
 
Hibernate
HibernateHibernate
Hibernate
Mallikarjuna G D
 
Jspprogramming
JspprogrammingJspprogramming
Jspprogramming
Mallikarjuna G D
 
Servlet programming
Servlet programmingServlet programming
Servlet programming
Mallikarjuna G D
 
Servlet programming
Servlet programmingServlet programming
Servlet programming
Mallikarjuna G D
 
Mmg logistics edu-final
Mmg  logistics edu-finalMmg  logistics edu-final
Mmg logistics edu-final
Mallikarjuna G D
 
Interview preparation net_asp_csharp
Interview preparation net_asp_csharpInterview preparation net_asp_csharp
Interview preparation net_asp_csharp
Mallikarjuna G D
 
Interview preparation devops
Interview preparation devopsInterview preparation devops
Interview preparation devops
Mallikarjuna G D
 
Interview preparation testing
Interview preparation testingInterview preparation testing
Interview preparation testing
Mallikarjuna G D
 
Interview preparation data_science
Interview preparation data_scienceInterview preparation data_science
Interview preparation data_science
Mallikarjuna G D
 
Interview preparation full_stack_java
Interview preparation full_stack_javaInterview preparation full_stack_java
Interview preparation full_stack_java
Mallikarjuna G D
 
Enterprunership
EnterprunershipEnterprunership
Enterprunership
Mallikarjuna G D
 
Core java
Core javaCore java
Core java
Mallikarjuna G D
 
Type script
Type scriptType script
Type script
Mallikarjuna G D
 
Angularj2.0
Angularj2.0Angularj2.0
Angularj2.0
Mallikarjuna G D
 
Git Overview
Git OverviewGit Overview
Git Overview
Mallikarjuna G D
 

More from Mallikarjuna G D (20)

Reactjs
ReactjsReactjs
Reactjs
 
Bootstrap 5 ppt
Bootstrap 5 pptBootstrap 5 ppt
Bootstrap 5 ppt
 
CSS
CSSCSS
CSS
 
Angular 2.0
Angular  2.0Angular  2.0
Angular 2.0
 
Spring andspringboot training
Spring andspringboot trainingSpring andspringboot training
Spring andspringboot training
 
Hibernate
HibernateHibernate
Hibernate
 
Jspprogramming
JspprogrammingJspprogramming
Jspprogramming
 
Servlet programming
Servlet programmingServlet programming
Servlet programming
 
Servlet programming
Servlet programmingServlet programming
Servlet programming
 
Mmg logistics edu-final
Mmg  logistics edu-finalMmg  logistics edu-final
Mmg logistics edu-final
 
Interview preparation net_asp_csharp
Interview preparation net_asp_csharpInterview preparation net_asp_csharp
Interview preparation net_asp_csharp
 
Interview preparation devops
Interview preparation devopsInterview preparation devops
Interview preparation devops
 
Interview preparation testing
Interview preparation testingInterview preparation testing
Interview preparation testing
 
Interview preparation data_science
Interview preparation data_scienceInterview preparation data_science
Interview preparation data_science
 
Interview preparation full_stack_java
Interview preparation full_stack_javaInterview preparation full_stack_java
Interview preparation full_stack_java
 
Enterprunership
EnterprunershipEnterprunership
Enterprunership
 
Core java
Core javaCore java
Core java
 
Type script
Type scriptType script
Type script
 
Angularj2.0
Angularj2.0Angularj2.0
Angularj2.0
 
Git Overview
Git OverviewGit Overview
Git Overview
 

Recently uploaded

Open and Critical Perspectives on AI in Education
Open and Critical Perspectives on AI in EducationOpen and Critical Perspectives on AI in Education
Open and Critical Perspectives on AI in Education
Robert Farrow
 
Introduction to Banking System in India.ppt
Introduction to Banking System in India.pptIntroduction to Banking System in India.ppt
Introduction to Banking System in India.ppt
Dr. S. Bulomine Regi
 
11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx
11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx
11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx
mansk2
 
MATATAG CURRICULUM sample lesson exemplar.docx
MATATAG CURRICULUM sample lesson exemplar.docxMATATAG CURRICULUM sample lesson exemplar.docx
MATATAG CURRICULUM sample lesson exemplar.docx
yardenmendoza
 
5. Postharvest deterioration of fruits and vegetables.pptx
5. Postharvest deterioration of fruits and vegetables.pptx5. Postharvest deterioration of fruits and vegetables.pptx
5. Postharvest deterioration of fruits and vegetables.pptx
UmeshTimilsina1
 
1. Importance_of_reducing_postharvest_loss.pptx
1. Importance_of_reducing_postharvest_loss.pptx1. Importance_of_reducing_postharvest_loss.pptx
1. Importance_of_reducing_postharvest_loss.pptx
UmeshTimilsina1
 
Java MCQ Questions and Answers PDF By ScholarHat
Java MCQ Questions and Answers PDF By ScholarHatJava MCQ Questions and Answers PDF By ScholarHat
Java MCQ Questions and Answers PDF By ScholarHat
Scholarhat
 
FIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.ppt
FIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.pptFIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.ppt
FIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.ppt
ashutoshklal29
 
ASP.NET Core Interview Questions PDF By ScholarHat.pdf
ASP.NET Core Interview Questions PDF By ScholarHat.pdfASP.NET Core Interview Questions PDF By ScholarHat.pdf
ASP.NET Core Interview Questions PDF By ScholarHat.pdf
Scholarhat
 
SD_Integrating 21st Century Skills in Classroom-based Assessment.pptx
SD_Integrating 21st Century Skills in Classroom-based Assessment.pptxSD_Integrating 21st Century Skills in Classroom-based Assessment.pptx
SD_Integrating 21st Century Skills in Classroom-based Assessment.pptx
elwoodprias1
 
SQL Server Interview Questions PDF By ScholarHat
SQL Server Interview Questions PDF By ScholarHatSQL Server Interview Questions PDF By ScholarHat
SQL Server Interview Questions PDF By ScholarHat
Scholarhat
 
BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...
BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...
BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...
Nguyen Thanh Tu Collection
 
React Interview Question PDF By ScholarHat
React Interview Question PDF By ScholarHatReact Interview Question PDF By ScholarHat
React Interview Question PDF By ScholarHat
Scholarhat
 
slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...
slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...
slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...
MANIVALANSR
 
QCE – Unpacking the syllabus Implications for Senior School practices and ass...
QCE – Unpacking the syllabus Implications for Senior School practices and ass...QCE – Unpacking the syllabus Implications for Senior School practices and ass...
QCE – Unpacking the syllabus Implications for Senior School practices and ass...
mansk2
 
MathematicsGrade7-Presentation-July-12024.pptx
MathematicsGrade7-Presentation-July-12024.pptxMathematicsGrade7-Presentation-July-12024.pptx
MathematicsGrade7-Presentation-July-12024.pptx
nolicaliso1
 
2 Post harvest Physiology of Horticulture produce.pptx
2 Post harvest Physiology of Horticulture  produce.pptx2 Post harvest Physiology of Horticulture  produce.pptx
2 Post harvest Physiology of Horticulture produce.pptx
UmeshTimilsina1
 
Demonstration module in Odoo 17 - Odoo 17 Slides
Demonstration module in Odoo 17 - Odoo 17 SlidesDemonstration module in Odoo 17 - Odoo 17 Slides
Demonstration module in Odoo 17 - Odoo 17 Slides
Celine George
 
2024 Winter SWAYAM NPTEL & A Student.pptx
2024 Winter SWAYAM NPTEL & A Student.pptx2024 Winter SWAYAM NPTEL & A Student.pptx
2024 Winter SWAYAM NPTEL & A Student.pptx
Utsav Yagnik
 
C Interview Questions PDF By Scholarhat.pdf
C Interview Questions PDF By Scholarhat.pdfC Interview Questions PDF By Scholarhat.pdf
C Interview Questions PDF By Scholarhat.pdf
Scholarhat
 

Recently uploaded (20)

Open and Critical Perspectives on AI in Education
Open and Critical Perspectives on AI in EducationOpen and Critical Perspectives on AI in Education
Open and Critical Perspectives on AI in Education
 
Introduction to Banking System in India.ppt
Introduction to Banking System in India.pptIntroduction to Banking System in India.ppt
Introduction to Banking System in India.ppt
 
11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx
11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx
11EHS Term 3 Week 1 Unit 1 Review: Feedback and improvementpptx
 
MATATAG CURRICULUM sample lesson exemplar.docx
MATATAG CURRICULUM sample lesson exemplar.docxMATATAG CURRICULUM sample lesson exemplar.docx
MATATAG CURRICULUM sample lesson exemplar.docx
 
5. Postharvest deterioration of fruits and vegetables.pptx
5. Postharvest deterioration of fruits and vegetables.pptx5. Postharvest deterioration of fruits and vegetables.pptx
5. Postharvest deterioration of fruits and vegetables.pptx
 
1. Importance_of_reducing_postharvest_loss.pptx
1. Importance_of_reducing_postharvest_loss.pptx1. Importance_of_reducing_postharvest_loss.pptx
1. Importance_of_reducing_postharvest_loss.pptx
 
Java MCQ Questions and Answers PDF By ScholarHat
Java MCQ Questions and Answers PDF By ScholarHatJava MCQ Questions and Answers PDF By ScholarHat
Java MCQ Questions and Answers PDF By ScholarHat
 
FIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.ppt
FIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.pptFIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.ppt
FIRST AID PRESENTATION ON INDUSTRIAL SAFETY by dr lal.ppt
 
ASP.NET Core Interview Questions PDF By ScholarHat.pdf
ASP.NET Core Interview Questions PDF By ScholarHat.pdfASP.NET Core Interview Questions PDF By ScholarHat.pdf
ASP.NET Core Interview Questions PDF By ScholarHat.pdf
 
SD_Integrating 21st Century Skills in Classroom-based Assessment.pptx
SD_Integrating 21st Century Skills in Classroom-based Assessment.pptxSD_Integrating 21st Century Skills in Classroom-based Assessment.pptx
SD_Integrating 21st Century Skills in Classroom-based Assessment.pptx
 
SQL Server Interview Questions PDF By ScholarHat
SQL Server Interview Questions PDF By ScholarHatSQL Server Interview Questions PDF By ScholarHat
SQL Server Interview Questions PDF By ScholarHat
 
BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...
BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...
BỘ ĐỀ THI HỌC SINH GIỎI CÁC TỈNH MÔN TIẾNG ANH LỚP 9 NĂM HỌC 2023-2024 (CÓ FI...
 
React Interview Question PDF By ScholarHat
React Interview Question PDF By ScholarHatReact Interview Question PDF By ScholarHat
React Interview Question PDF By ScholarHat
 
slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...
slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...
slidesgo-mastering-the-art-of-listening-insights-from-robin-sharma-2024070718...
 
QCE – Unpacking the syllabus Implications for Senior School practices and ass...
QCE – Unpacking the syllabus Implications for Senior School practices and ass...QCE – Unpacking the syllabus Implications for Senior School practices and ass...
QCE – Unpacking the syllabus Implications for Senior School practices and ass...
 
MathematicsGrade7-Presentation-July-12024.pptx
MathematicsGrade7-Presentation-July-12024.pptxMathematicsGrade7-Presentation-July-12024.pptx
MathematicsGrade7-Presentation-July-12024.pptx
 
2 Post harvest Physiology of Horticulture produce.pptx
2 Post harvest Physiology of Horticulture  produce.pptx2 Post harvest Physiology of Horticulture  produce.pptx
2 Post harvest Physiology of Horticulture produce.pptx
 
Demonstration module in Odoo 17 - Odoo 17 Slides
Demonstration module in Odoo 17 - Odoo 17 SlidesDemonstration module in Odoo 17 - Odoo 17 Slides
Demonstration module in Odoo 17 - Odoo 17 Slides
 
2024 Winter SWAYAM NPTEL & A Student.pptx
2024 Winter SWAYAM NPTEL & A Student.pptx2024 Winter SWAYAM NPTEL & A Student.pptx
2024 Winter SWAYAM NPTEL & A Student.pptx
 
C Interview Questions PDF By Scholarhat.pdf
C Interview Questions PDF By Scholarhat.pdfC Interview Questions PDF By Scholarhat.pdf
C Interview Questions PDF By Scholarhat.pdf
 

Build tool

  • 1. June 25, 2017 www.snipe.co.in 1 Prepared :Mallikarjuna G D Email: gdmallikarjuna@gmail.com
  • 2. June 25, 2017 2 Build Tools
  • 3. June 25, 2017 3 Agenda •Ant Overview - what is ant - Features of Ant - Why Ant? - Ant History • Maven Overview - What is Maven -Features Maven -Why Maven? -Maven History • Difference B/W Ant and Maven
  • 4. June 25, 2017 4 Ant Overview • What is Ant ? •Apache Ant is a software tool for automating software build processes   •It was a replacement for the Unix make build tool, It is similar to Make but is implemented using the java language, requires the Java platform, and is best suited to building Java projects. • Developed by Apache Tomcat and released as Open Source • Allows writing managed code in Java Language
  • 5. June 25, 2017 5 Ant Features • Features of Ant • Ant is the most complete Java build and deployment tool available. •Ant scripts are written using plain XML. • Ant is good at automating complicated repetitive tasks. • Ant comes with a big list of predefined tasks. •Ant provides an interface to develop custom tasks. •Ant can be easily invoked from the command line and it can integrate with free and commercial IDEs.
  • 6. June 25, 2017 6 Ant Overview • Features of Ant(cont.) •Nightly + Continuous Builds Nightly •We don't provide binary nightly builds at the moment. Continuous Builds •Ant and Ivy are using Continuous Integrations systems to improve the development process. Note that these are no official builds and they are not endorsed or even supported by the Ant team. But if you have problems with testing the latest (successful) build, you are welcome to post that on the developer mailing list
  • 7. June 25, 2017 7 Ant Overview • Why Ant ? •Creating the basic structure for project, which is required for deployment. The structure may vary from project to project or depending upon the type of application •Taking the latest checkout of the project files from any source code version system •Copying the required set of files to the desired directories. This may include filtering of the files which are not required in deployment, but are required only for development.   •Compiling the source code to generate output run able files •Generating the documentation by using various tools like Java Doc or PHP Documenter. 
  • 8. June 25, 2017 8 Pro Ant • Pros of Using Ant •You control everything, because you have to largely build it yourself (though you can copy and paste). • Easy to ad support for legacy builds. • Ant is a programming language (almost) so you can do crazy things, but it requires much more debugging 
  • 9. June 25, 2017 9 Con Ant • Cons of using Ant •IDE integration doesn't seem to be as well done. Running your ant scripts with *every build* requires more setup and configuration, and generally on every machine. • Its no longer the standard, and many projects which are mavenized are much easier to use via maven than downloading the jar and getting it into your lib. then doing wire up via ant.
  • 10. June 25, 2017 10 Maven Overview • What is Maven ? • Apache Maven is a popular open source tool that offers a convention-over- configuration approach to project build management. It has been increasing its presence across enterprises at a fast pace.   •Maven brings a lot of structure, discipline, and cross project capabilities to the build management process. •The heart of a Maven project is the Project Object Model (POM). It contains a detailed description of your project, including information about versioning and configuration management, dependencies, application and testing resources  and structure, and much more. The POM takes the form of an XML file (pom.xml), which is placed in the project home directory. •Current version of Maven is 3.
  • 11. June 25, 2017 11 Maven Overview • Understanding the problem without Maven There are many problems that we face during the project development. They are discussed below: • Adding set of Jars in each project: In case of struts, spring, hibernate frameworks, we need to add set of jar files in each project. It must include all the dependencies of jars also. • Creating the right project structure: We must create the right project structure in servlet, struts etc, otherwise it will not be executed. •Building and Deploying the project: We must have to build and deploy the project so that it may work.
  • 12. June 25, 2017 12 Maven Features • Features of Maven • Simple project setup that follows best practices - get a new project or module started in seconds •Consistent usage across all projects means no ramp up time for new developers coming onto a project •Able to easily work with multiple projects at the same time •A large and growing repository of libraries and metadata to use out of the box, and arrangements in place with the largest Open Source projects for real-time availability of their latest releases •Extensible, with the ability to easily write plugins in Java or scripting languages
  • 13. June 25, 2017 13 Maven Features • Features of Maven (cont.) •Extensible, with the ability to easily write plugins in Java or scripting languages •  One of the highlights of Maven  is Transitive Dependency Management. You do not have to declare each and every JAR that will be needed, directly or indirectly, by your application. You just tell Maven which libraries you need, and Maven will take care of the libraries that your libraries need. •Instant access to new features with little or no extra configuration •Model based builds: Maven is able to build any number of projects into predefined output types such as a JAR, WAR, or distribution based on metadata about the project, without the need to do any scripting in most cases.
  • 14. June 25, 2017 14 Maven Lifecycle • Standard Maven lifecycle phases: Phase Description Validate Runs a sanity check on the project itself. Compile Compiles the project source code. Test Runs the unit tests (typically using JUnit) . Package Packages the compiled code in its distributable format (JAR, WAR, etc.). Verify Run checks to confirm that the package is valid. Install Installs the package into the local repository for use as a dependency in other projects on your local machine. Deploy Done in an integration or release environment, copies the final package to the remote repository for sharing with other developers and projects.
  • 15. June 25, 2017 15 Pro Maven • Pros of using Maven: • All dependencies are downloaded automatically; •All compile/build/dependency info is bundled with your maven spec, and therefore forced to be in source control with your code. (this is a huge plus) •Drastically simplifies the way your build will work, because every build follows a generally standard procedure. •Every member of your team will be building/deploying in the same way with every compile. •Turning on new features (such as junit) across the board for things like CI/CD can be as easy as one line in your maven config file.
  • 16. June 25, 2017 16 Pro Maven • Pros of using Maven(cont.) •Standard project structure. (which can be overridden) •Setting up a project is really fast. •Transitive dependencies and dependency management. •Promotes modular design of code. •Can generate reports and diagrams. • Works well with distributed teams. •Automated build of application. •Promotes the concept of a resource repository.
  • 17. June 25, 2017 17 Pro Maven • Pros of using Maven(cont.) • Use of remote repository. • Has IDE support. • When a project uses Maven, it means that anyone familiar with Maven can pick up the build and start running  it without having to fiddle with configuration just  to figure out how to get  the thing to compile. •Maven has a well defined life Cycle
  • 18. June 25, 2017 18 Con Maven • Cons of using Maven • You need to know maven command line or use an ide that has maven integration, such as netbeans or eclispe. •Learning Curve (there are something like 20-26 different build phases, plus packaging types). •Your project pretty much has to be laid out the correct way, you can work around this but you shouldn't. •Its verbose and complex. • If you have a dependent jar that isn't mavenized, you might lose your mind before you figure out how to integrate it.
  • 19. June 25, 2017 19 Comparison of Ant and Maven •Difference between Ant and Maven
  • 20. June 25, 2017 20 Comparison of Ant and Maven •Difference between Ant and Maven(Cont.) •One major difference between Maven and ANT is that Maven requires less configuration than ANT because it works on principle of Convention over configuration •Another significant difference between Maven and ANT is dependency Management. •Third and most important difference between Maven and ANT is that, Maven offers a consistent and common interface to build Java projects. •Another technical difference between ANT and Maven is that ANT task doesn't have any lifecycle, you need to define targets and there dependencies. While Maven has lifecycle, which is invoked when you run commands like mvn install. Maven executes a series of steps as a result of this command to produce artifacts e.g. JAR file.
  • 21. June 25, 2017 21 Comparison of Ant and Maven • Difference between Ant and Maven(Cont.) •Maven also enforce a standard naming convention for artifacts defined using groupId, artifactId and version. Also one more difference between ANT and Maven is that, Maven is more than just a build tool, it act as project management tool and can generate reports etc, Though I have yet to use this feature.
  • 22. June 25, 2017 22 • Difference between Ant and Maven Ant Maven Ant is basically a build tool. Maven is a build tool, a dependency management tool and a reporting  tool, intended to take Ant to the next level.  Ant doesn't have formal conventions like a common project directory structure. Maven has conventions, it uses a defined standard project directory structure. In a way Maven tries to dictate the project directory structure. Ant is procedural,  you have to tell Ant exactly what to do and when to do it. You have to tell it to compile, then copy, then compress. Maven is declarative. All you have  to do is create a pom.xml file and put your source in the default directory. Maven takes care of the rest. Comparison of Ant and Maven
  • 23. June 25, 2017 23 • Difference between Ant and Maven(Cont.) Ant Maven Ant does not provide facilities for dependency management at all. Though Ivy can be used in conjunction with Ant for the same. The real strength of Maven is its dependency management. Ant, by itself, doesn’t have a facility for reusing build knowledge; this is all encapsulated in the build.xml file. Reuse is achieved through the use of plugins that become part of the Maven installation library. Ant is good at the low level. Maven is good at the high level. You can run Ant tasks from within Maven. You can even embed your Ant scripts in the POM. Comparison of Ant and Maven
  • 24. June 25, 2017 24 • Difference between Ant and Maven(Cont.) Ant Maven Ant doesn't have a lifecycle, you have to define goals and goal dependencies. Maven has a well defined lifecycle The build environment is only as portable as the person who designed the build.xml forced it to be. One can generally import a clean Maven Project and build immediately with no need to set up a customized external build environment. No IDE Support. Has IDE  Support.. Excellent documentation available. Documentation is growing but still inconsistent. Comparison of Ant and Maven
  • 25. June 25, 2017 25 Statistics • Statistics
  • 26. June 25, 2017 26 Conclusion • Conclusion • Maven is not just a build tool only. Building is just one of the aspects. Maven plays a role during all the stages of the life-cycle of a project.
  • 27. June 25, 2017 27 Reference • Reference •http://ant.apache.org/ •http://maven.apache.org •https://dzone.com/articles/maven-or-ant •http://geekscontent.blogspot.in/2013/04/apache-maven.html#commen
  • 28. June 25, 2017 28 Thank You