Apache Maven In 10 Slides

6,301 views
6,052 views

Published on

Presents an overview of Apache Maven, a famous declarative build tool widely used in the Java ecosystem, focussing on philosophy, qualities and characteristics. To learn Maven, see www.sonatype.com/book/.
This is OpenTalkWare www.opentalkware.org cc-by-3.0 by Robert Burrell Donkin http://robertburrelldonkin.name

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,301
On SlideShare
0
From Embeds
0
Number of Embeds
999
Actions
Shares
0
Downloads
59
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Apache Maven In 10 Slides

  1. 1. Apache Maven in 10 SlidesAn Unofficial OutlineThis is OpenTalkWarehttp://www.opentalkware.org CC-BY-3.0
  2. 2. Maven...• builds software • libraries, • applications, • distributions, • plugins • ...and Maven
  3. 3. Maven is...• open source • developed at Apache • originated in Jakarta • influenced by house style • to reduce maintenance of component builds • widely used in open source • community driven
  4. 4. Maven is...• declarative • POM describes project • User asks Maven to operate • Maven reads POM and runs
  5. 5. Maven is...• extensible • highly extensible • plugins... • hooks... • lifecycle extensions... • ...almost everything — • about Maven, almost nothing is true in general
  6. 6. Maven is...• comprehensive • lots of extensions • powerful • flexible • but Maven demands control
  7. 7. Maven values...• reproducibility • minimal build variance • process automation • standard choreography • limits local adaption
  8. 8. Maven values...• repositories • as caches • as resource locators • as promoting finely grained component models • as encouraging open source
  9. 9. Maven values...• conventions • "You can have any..." • "... colour as long as its black." — Ford • "... convention as long as you code it." — Maven • adoption is strongly recommended • battle tested
  10. 10. Maven POMs support...• inheritance • but not mixins • (with predictable problems) • efficient maintainable readable POMs • remember all projects inherit
  11. 11. Maven POMs support...• aggregation • master build for modules • master not always module parent • reporting sometimes tricky • dependencies sometimes tricky
  12. 12. Thanks• To the Apache Maven project of the Apache Software Foundation• Based on An Unofficial Outline: Apache Maven in 10 Slides by OpenTalkWare. Original source is available under CC-BY. UI based on S5 which is public domain. "Apache Maven" and "Maven" are marks of the Apache Software Foundation (ASF). This unofficial guide was created without the permission of the ASF.• OpenTalkWare — http://www.opentalkware.org

×