An introduction to Apache Maven - PowerPoint PPT Presentation

About This Presentation
Title:

An introduction to Apache Maven

Description:

A short introduction to Apache Maven, what is it and how is it used for Java based builds. How does it work and what other tools are used ? – PowerPoint PPT presentation

Number of Views:4459
Slides: 10
Provided by: semtechs
Tags: ant | apache | build | java | maven

less

Transcript and Presenter's Notes

Title: An introduction to Apache Maven


1
Apache Maven
  • What is it ?
  • How does it work ?
  • Why use it ?
  • Structure
  • Usage
  • Examples

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
2
Apache Maven What is it ?
  • A build automation tool
  • Mainly for Java projects
  • Uses conventions for build structure / procedure
  • Licensed by Apache
  • Developed via Jakarta project
  • Stores libraries and plugins in a central
    repository

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
3
Apache Maven How does it work ?
  • Build controlled via pom.xml project file
  • POM Project Object Model
  • Uses standard build order, directories, plugins
  • Identifies dependencies in the pom.xml
  • One POM can call child POM's
  • It makes the build easier
  • Provides uniformity

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
4
Apache Maven Why use it ?
  • Remove complexity from the build process
  • Use a uniform process
  • Make the build repeatable
  • Make the build consistent with other projects
  • Provides a controlled release process
  • Manages depedencies

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
5
Apache Maven Structure
  • Using Maven 0.9 as an example
  • the structure of the Maven directories

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
6
Apache Maven Usage
  • In terms of usage most estimates seem to agree
  • Maven / Ant / Eclipse are the most used

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
7
Apache Maven Example
  • Taking the build of hadoop-2.0.6-alpha as an
    example
  • A parent pom.xml calls module hadoop-project
  • ltmodulesgt
  • ltmodulegthadoop-projectlt/modulegt
  • ltmodulegthadoop-project-distlt/modulegt
  • ltmodulegthadoop-assemblieslt/modulegt
  • Identifies plugins
  • ltplugingt
  • ltgroupIdgtcom.atlassian.maven.pluginslt/gr
    oupIdgt
  • ltartifactIdgtmaven-clover2-pluginlt/artifa
    ctIdgt
  • ltversiongt3.0.5lt/versiongt
  • lt/plugingt

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
8
Apache Maven Example
  • Taking the build of hadoop-2.0.6-alpha as an
    example
  • A child pom.xml defines properties
  • ltpropertiesgt
  • ltfailIfNoTestsgtfalselt/failIfNoTestsgt
  • ltmaven.test.redirectTestOutputToFilegttruelt/mav
    en.test.redirectTestOutputToFilegt
  • Identifies dependencies
  • ltdependencygt
  • ltgroupIdgtorg.mortbay.jettylt/groupIdgt
  • ltartifactIdgtjetty-utillt/artifactIdgt
  • ltversiongt6.1.26lt/versiongt
  • lt/dependencygt
  • Defines profiles
  • Defines plugins
  • Defines the Build

www.semtech-solutions.co.nz info_at_semtech-solutions
.co.nz
9
Contact Us
  • Feel free to contact us at
  • www.semtech-solutions.co.nz
  • info_at_semtech-solutions.co.nz
  • We offer IT project consultancy
  • We are happy to hear about your problems
  • You can just pay for those hours that you need
  • To solve your problems
Write a Comment
User Comments (0)
About PowerShow.com