SlideShare a Scribd company logo
1 of 31
Java Build tools : Ant and Maven
 Ant was the first among “modern” build tools.
 It was released in 2000 and in a short period of time became the most popular build
tool for Java projects.
 It is very easy to learn thus allowing anyone to start using it without any special
preparation.
 It is based on procedural programming idea.
 Maven was released in 2004. Its goal was to improve upon some of the problems
developers were facing when using Ant.
© Sun Technologies Inc. 1
© Sun Technologies Inc.
Apache Ant features
2
 Ant doesn’t have formal conventions like a common project directory structure or
default behavior.
 You have to tell Ant exactly where to find the source and where to put the output.
 Ant is procedural.
You have to tell Ant exactly what to do and when to do it.
© Sun Technologies Inc.
Getting started with Ant
 Download and unzip the latest version of ANT.
 You should have installed Java and set up path of JAVA_HOME.
 Set PATH environment variable by appending path of ANT.
 Build a basic ANT script and run from command prompt.
3
© Sun Technologies Inc.
Running and checking whether Ant is installed in the system .
4
© Sun Technologies Inc. 5
Writing build.xml file in Notepad
© Sun Technologies Inc. 6
Running build.xml file in command prompt
© Sun Technologies Inc. 7
Running hello.xml file
© Sun Technologies Inc.
Executing hello.xml in command prompt
8
© Sun Technologies Inc.
Executing hello.xml in command prompt
9
© Sun Technologies Inc.
Writing Second target in hello.xml
10
© Sun Technologies Inc.
Executing Second target of hello.xml in command prompt
11
© Sun Technologies Inc.
Executing build.xml in eclipse
12
© Sun Technologies Inc.
Executing build.xml in eclipse
13
© Sun Technologies Inc.
Executing run target
14
© Sun Technologies Inc.
Executing run target in eclipse
15
© Sun Technologies Inc.
Executing second run target in eclipse
16
© Sun Technologies Inc.
Sample Ant build.xml
17
© Sun Technologies Inc.
Apache Maven
18
Apache Maven is a open source build testing tool. It will check the
compilation issue in entire framework based on the concept of a
project object model (POM), Maven can manage project's build,
reporting and documentation.
© Sun Technologies Inc.
Apache Maven features
19
 Maven has conventions.
It knows where your source code is because you followed the convention. Maven’s
Compiler plugin put the bytecode in target/classes, and it produces a JAR file in
target.
 Maven is declarative.
All you need to do is create a pom.xml file and put your source in the default
directory. Maven will take care of the rest.
© Sun Technologies Inc.
Apache Maven Installation
20
 Download latest version of maven and unzip the folder.
 Copy the bin path.
 Go to environment variables find path variable and edit and paste the bin path.
 Create a new variable as Maven_Home and paste the path of Maven.
 And the Java_Home should contain path of the java.
 Go to command prompt and check whether maven is installed or not by typing
mvn –version.
© Sun Technologies Inc.
Apache Maven Installation
21
© Sun Technologies Inc.
Downloading jars from command prompt
22
© Sun Technologies Inc.
Apache Maven Installation
23
First we need to add all the dependencies to pom.xml file.
Then run,
 mvn compile is a command to get dependencies jar from internet
It will download Jars from internet based on pom.xml file.
 mvn install
Command for executing test script from command prompt.
© Sun Technologies Inc.
Apache Maven with eclipse
24
 Install maven plugin in eclipse
Help -> install new software
install the plugin m2e - Maven Integration for Eclipse
 Install java
© Sun Technologies Inc.
Apache Maven with eclipse
25
© Sun Technologies Inc.
Apache Maven with eclipse
26
© Sun Technologies Inc.
Apache Maven with eclipse
27
© Sun Technologies Inc.
Apache Maven with eclipse
28
© Sun Technologies Inc.
Apache Ant VS Maven
29
ANT,
doesn't have formal conventions like a common project directory structure,
you have to tell Ant exactly where to find the source and where to put the
output.
is procedural, you have to tell Ant exactly what to do and when to do it. You
had to tell it to compile, then copy, then compress.
doesn't have a lifecycle, you had to define goals and goal dependencies. You
had to attach a sequence of tasks to each goal/target manually.
© Sun Technologies Inc.
Apache Ant VS Maven
30
Maven,
 has conventions, it already knew where your source code was because you followed
the convention. It put the bytecode in target/classes, and it produced a JAR file in
target.
 is declarative. All you need to do is create a pom.xml file and put your source in the
default directory. Maven will take care of the rest.
© Sun Technologies Inc. 31
Thank you

More Related Content

What's hot

JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...
JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...
JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...Simplilearn
 
PERFORMANCE TESTING USING LOAD RUNNER
PERFORMANCE  TESTING  USING  LOAD RUNNERPERFORMANCE  TESTING  USING  LOAD RUNNER
PERFORMANCE TESTING USING LOAD RUNNERAjithaG9
 
Stress driven development
Stress driven developmentStress driven development
Stress driven developmentmitesh_sharma
 
JMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeterJMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeterRapidValue
 
Wap tpresentation (Load testing Tool )
Wap tpresentation (Load testing Tool )Wap tpresentation (Load testing Tool )
Wap tpresentation (Load testing Tool )jagdishdevabhaipatel
 
Presentation on Apache Jmeter
Presentation on Apache JmeterPresentation on Apache Jmeter
Presentation on Apache JmeterSabitri Gaire
 
Introduction to jmeter & how to view jmeter Test Result in Real-Time
Introduction to jmeter & how to view jmeter Test Result in Real-TimeIntroduction to jmeter & how to view jmeter Test Result in Real-Time
Introduction to jmeter & how to view jmeter Test Result in Real-TimeBugRaptors
 
Load Testing with JMeter
Load Testing with JMeterLoad Testing with JMeter
Load Testing with JMeterYuriy Gerasimov
 
Introduction to GOCD - Amulya Sharma
Introduction to GOCD - Amulya SharmaIntroduction to GOCD - Amulya Sharma
Introduction to GOCD - Amulya SharmaAmulya Sharma
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runnerHimanshu
 
Open Source Load Testing: JMeter, Gatling and Taurus
Open Source Load Testing: JMeter, Gatling and TaurusOpen Source Load Testing: JMeter, Gatling and Taurus
Open Source Load Testing: JMeter, Gatling and TaurusGuy Salton
 
Load Test Drupal Site Using JMeter and Amazon AWS
Load Test Drupal Site Using JMeter and Amazon AWSLoad Test Drupal Site Using JMeter and Amazon AWS
Load Test Drupal Site Using JMeter and Amazon AWSVladimir Ilic
 
JMeter - Performance testing your webapp
JMeter - Performance testing your webappJMeter - Performance testing your webapp
JMeter - Performance testing your webappAmit Solanki
 
Performance testing using hp load runner
Performance testing using hp load runnerPerformance testing using hp load runner
Performance testing using hp load runnerReturn on Intelligence
 
How to Get Automatic Analysis for Load Test Results
How to Get Automatic Analysis for Load Test ResultsHow to Get Automatic Analysis for Load Test Results
How to Get Automatic Analysis for Load Test ResultsClare Avieli
 
Load testing a website through JMETER
Load testing a website through JMETERLoad testing a website through JMETER
Load testing a website through JMETERBugRaptors
 
Jmeter load testing
Jmeter load testingJmeter load testing
Jmeter load testingAli Raza
 

What's hot (20)

JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...
JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...
JMeter Load Testing | Load Testing Using JMmeter | JMeter Tutorial For Beginn...
 
PERFORMANCE TESTING USING LOAD RUNNER
PERFORMANCE  TESTING  USING  LOAD RUNNERPERFORMANCE  TESTING  USING  LOAD RUNNER
PERFORMANCE TESTING USING LOAD RUNNER
 
Stress driven development
Stress driven developmentStress driven development
Stress driven development
 
JMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeterJMeter JMX Script Creation via BlazeMeter
JMeter JMX Script Creation via BlazeMeter
 
Wap tpresentation (Load testing Tool )
Wap tpresentation (Load testing Tool )Wap tpresentation (Load testing Tool )
Wap tpresentation (Load testing Tool )
 
Presentation on Apache Jmeter
Presentation on Apache JmeterPresentation on Apache Jmeter
Presentation on Apache Jmeter
 
Introduction to jmeter & how to view jmeter Test Result in Real-Time
Introduction to jmeter & how to view jmeter Test Result in Real-TimeIntroduction to jmeter & how to view jmeter Test Result in Real-Time
Introduction to jmeter & how to view jmeter Test Result in Real-Time
 
Load Testing with JMeter
Load Testing with JMeterLoad Testing with JMeter
Load Testing with JMeter
 
Open source load testing
Open source load testingOpen source load testing
Open source load testing
 
JMeter
JMeterJMeter
JMeter
 
Introduction to GOCD - Amulya Sharma
Introduction to GOCD - Amulya SharmaIntroduction to GOCD - Amulya Sharma
Introduction to GOCD - Amulya Sharma
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
 
Open Source Load Testing: JMeter, Gatling and Taurus
Open Source Load Testing: JMeter, Gatling and TaurusOpen Source Load Testing: JMeter, Gatling and Taurus
Open Source Load Testing: JMeter, Gatling and Taurus
 
Load Test Drupal Site Using JMeter and Amazon AWS
Load Test Drupal Site Using JMeter and Amazon AWSLoad Test Drupal Site Using JMeter and Amazon AWS
Load Test Drupal Site Using JMeter and Amazon AWS
 
JMeter - Performance testing your webapp
JMeter - Performance testing your webappJMeter - Performance testing your webapp
JMeter - Performance testing your webapp
 
Performance testing using hp load runner
Performance testing using hp load runnerPerformance testing using hp load runner
Performance testing using hp load runner
 
JMeter workshop
JMeter workshopJMeter workshop
JMeter workshop
 
How to Get Automatic Analysis for Load Test Results
How to Get Automatic Analysis for Load Test ResultsHow to Get Automatic Analysis for Load Test Results
How to Get Automatic Analysis for Load Test Results
 
Load testing a website through JMETER
Load testing a website through JMETERLoad testing a website through JMETER
Load testing a website through JMETER
 
Jmeter load testing
Jmeter load testingJmeter load testing
Jmeter load testing
 

Viewers also liked

Viewers also liked (20)

XPATH
XPATHXPATH
XPATH
 
Path Testing
Path TestingPath Testing
Path Testing
 
Selenium web driver
Selenium web driverSelenium web driver
Selenium web driver
 
An introduction to Maven
An introduction to MavenAn introduction to Maven
An introduction to Maven
 
Demystifying Maven
Demystifying MavenDemystifying Maven
Demystifying Maven
 
Jira
JiraJira
Jira
 
Selenium
SeleniumSelenium
Selenium
 
Javascript
JavascriptJavascript
Javascript
 
Automated Deployment with Maven - going the whole nine yards
Automated Deployment with Maven - going the whole nine yardsAutomated Deployment with Maven - going the whole nine yards
Automated Deployment with Maven - going the whole nine yards
 
HTML, CSS and Java Scripts Basics
HTML, CSS and Java Scripts BasicsHTML, CSS and Java Scripts Basics
HTML, CSS and Java Scripts Basics
 
Maven basic concept
Maven basic conceptMaven basic concept
Maven basic concept
 
A Case Study of Using Selenium IDE and WebDriver_Word Doc
A Case Study of Using Selenium IDE and WebDriver_Word DocA Case Study of Using Selenium IDE and WebDriver_Word Doc
A Case Study of Using Selenium IDE and WebDriver_Word Doc
 
Maven 3 / Tycho
Maven 3 / TychoMaven 3 / Tycho
Maven 3 / Tycho
 
Hands On with Maven
Hands On with MavenHands On with Maven
Hands On with Maven
 
Selenium
SeleniumSelenium
Selenium
 
Hibernate 3
Hibernate 3Hibernate 3
Hibernate 3
 
Concurrency and Multithreading Demistified - Reversim Summit 2014
Concurrency and Multithreading Demistified - Reversim Summit 2014Concurrency and Multithreading Demistified - Reversim Summit 2014
Concurrency and Multithreading Demistified - Reversim Summit 2014
 
Java Builds with Maven and Ant
Java Builds with Maven and AntJava Builds with Maven and Ant
Java Builds with Maven and Ant
 
Version Management in Maven
Version Management in MavenVersion Management in Maven
Version Management in Maven
 
Selenium
SeleniumSelenium
Selenium
 

Similar to Maven and ANT

Similar to Maven and ANT (20)

Manen Ant SVN
Manen Ant SVNManen Ant SVN
Manen Ant SVN
 
Maven
MavenMaven
Maven
 
Maven Introduction
Maven IntroductionMaven Introduction
Maven Introduction
 
Maven 2 features
Maven 2 featuresMaven 2 features
Maven 2 features
 
Maven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable ResultsMaven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable Results
 
Exploring Maven SVN GIT
Exploring Maven SVN GITExploring Maven SVN GIT
Exploring Maven SVN GIT
 
1 app 2 developers 3 servers
1 app 2 developers 3 servers1 app 2 developers 3 servers
1 app 2 developers 3 servers
 
An Introduction to Maven Part 1
An Introduction to Maven Part 1An Introduction to Maven Part 1
An Introduction to Maven Part 1
 
Build server
Build serverBuild server
Build server
 
Introduction to Maven
Introduction to MavenIntroduction to Maven
Introduction to Maven
 
Apache ANT vs Apache Maven
Apache ANT vs Apache MavenApache ANT vs Apache Maven
Apache ANT vs Apache Maven
 
Build Automation using Maven
Build Automation using Maven Build Automation using Maven
Build Automation using Maven
 
Codename one
Codename oneCodename one
Codename one
 
Django simplified : by weever mbakaya
Django simplified : by weever mbakayaDjango simplified : by weever mbakaya
Django simplified : by weever mbakaya
 
Apache maven, a software project management tool
Apache maven, a software project management toolApache maven, a software project management tool
Apache maven, a software project management tool
 
Maven basics
Maven basicsMaven basics
Maven basics
 
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsSE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-Tools
 
A-Z_Maven.pdf
A-Z_Maven.pdfA-Z_Maven.pdf
A-Z_Maven.pdf
 
Maven
MavenMaven
Maven
 
Can I Contain This?
Can I Contain This?Can I Contain This?
Can I Contain This?
 

More from Sun Technlogies

More from Sun Technlogies (10)

HyperText Markup Language - HTML
HyperText Markup Language - HTMLHyperText Markup Language - HTML
HyperText Markup Language - HTML
 
Extended Finite State Machine - EFSM
Extended Finite State Machine - EFSMExtended Finite State Machine - EFSM
Extended Finite State Machine - EFSM
 
Cascading Style Sheets - CSS
Cascading Style Sheets - CSSCascading Style Sheets - CSS
Cascading Style Sheets - CSS
 
Core java
Core javaCore java
Core java
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
Devops
DevopsDevops
Devops
 
QTest
QTest QTest
QTest
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Array and functions
Array and functionsArray and functions
Array and functions
 
Sikuli
SikuliSikuli
Sikuli
 

Recently uploaded

Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxRTS corp
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 

Recently uploaded (20)

Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 

Maven and ANT

  • 1. Java Build tools : Ant and Maven  Ant was the first among “modern” build tools.  It was released in 2000 and in a short period of time became the most popular build tool for Java projects.  It is very easy to learn thus allowing anyone to start using it without any special preparation.  It is based on procedural programming idea.  Maven was released in 2004. Its goal was to improve upon some of the problems developers were facing when using Ant. © Sun Technologies Inc. 1
  • 2. © Sun Technologies Inc. Apache Ant features 2  Ant doesn’t have formal conventions like a common project directory structure or default behavior.  You have to tell Ant exactly where to find the source and where to put the output.  Ant is procedural. You have to tell Ant exactly what to do and when to do it.
  • 3. © Sun Technologies Inc. Getting started with Ant  Download and unzip the latest version of ANT.  You should have installed Java and set up path of JAVA_HOME.  Set PATH environment variable by appending path of ANT.  Build a basic ANT script and run from command prompt. 3
  • 4. © Sun Technologies Inc. Running and checking whether Ant is installed in the system . 4
  • 5. © Sun Technologies Inc. 5 Writing build.xml file in Notepad
  • 6. © Sun Technologies Inc. 6 Running build.xml file in command prompt
  • 7. © Sun Technologies Inc. 7 Running hello.xml file
  • 8. © Sun Technologies Inc. Executing hello.xml in command prompt 8
  • 9. © Sun Technologies Inc. Executing hello.xml in command prompt 9
  • 10. © Sun Technologies Inc. Writing Second target in hello.xml 10
  • 11. © Sun Technologies Inc. Executing Second target of hello.xml in command prompt 11
  • 12. © Sun Technologies Inc. Executing build.xml in eclipse 12
  • 13. © Sun Technologies Inc. Executing build.xml in eclipse 13
  • 14. © Sun Technologies Inc. Executing run target 14
  • 15. © Sun Technologies Inc. Executing run target in eclipse 15
  • 16. © Sun Technologies Inc. Executing second run target in eclipse 16
  • 17. © Sun Technologies Inc. Sample Ant build.xml 17
  • 18. © Sun Technologies Inc. Apache Maven 18 Apache Maven is a open source build testing tool. It will check the compilation issue in entire framework based on the concept of a project object model (POM), Maven can manage project's build, reporting and documentation.
  • 19. © Sun Technologies Inc. Apache Maven features 19  Maven has conventions. It knows where your source code is because you followed the convention. Maven’s Compiler plugin put the bytecode in target/classes, and it produces a JAR file in target.  Maven is declarative. All you need to do is create a pom.xml file and put your source in the default directory. Maven will take care of the rest.
  • 20. © Sun Technologies Inc. Apache Maven Installation 20  Download latest version of maven and unzip the folder.  Copy the bin path.  Go to environment variables find path variable and edit and paste the bin path.  Create a new variable as Maven_Home and paste the path of Maven.  And the Java_Home should contain path of the java.  Go to command prompt and check whether maven is installed or not by typing mvn –version.
  • 21. © Sun Technologies Inc. Apache Maven Installation 21
  • 22. © Sun Technologies Inc. Downloading jars from command prompt 22
  • 23. © Sun Technologies Inc. Apache Maven Installation 23 First we need to add all the dependencies to pom.xml file. Then run,  mvn compile is a command to get dependencies jar from internet It will download Jars from internet based on pom.xml file.  mvn install Command for executing test script from command prompt.
  • 24. © Sun Technologies Inc. Apache Maven with eclipse 24  Install maven plugin in eclipse Help -> install new software install the plugin m2e - Maven Integration for Eclipse  Install java
  • 25. © Sun Technologies Inc. Apache Maven with eclipse 25
  • 26. © Sun Technologies Inc. Apache Maven with eclipse 26
  • 27. © Sun Technologies Inc. Apache Maven with eclipse 27
  • 28. © Sun Technologies Inc. Apache Maven with eclipse 28
  • 29. © Sun Technologies Inc. Apache Ant VS Maven 29 ANT, doesn't have formal conventions like a common project directory structure, you have to tell Ant exactly where to find the source and where to put the output. is procedural, you have to tell Ant exactly what to do and when to do it. You had to tell it to compile, then copy, then compress. doesn't have a lifecycle, you had to define goals and goal dependencies. You had to attach a sequence of tasks to each goal/target manually.
  • 30. © Sun Technologies Inc. Apache Ant VS Maven 30 Maven,  has conventions, it already knew where your source code was because you followed the convention. It put the bytecode in target/classes, and it produced a JAR file in target.  is declarative. All you need to do is create a pom.xml file and put your source in the default directory. Maven will take care of the rest.
  • 31. © Sun Technologies Inc. 31 Thank you