Introduction To Maven
Introduction To Maven
Introduction To Maven
Michael Youngstrom
Notes
Dependency System
Multi-module builds
Consistent project structure
Consistent build model
Plugin oriented
Project generated sites
The Maven Mindset
Ant (2000)
Granddaddy of Java Build Tools
Scripting in XML
Very flexible
Ant+Ivy (2004)
Ant but with Dependency Management
Gradle (2008)
Attempt to combine Maven structure with
Groovy Scripting
Easily extensible
Immature
Maven Learning Resources
Maven Homepage
http://maven.apache.org
Reference Documentation for Maven
Reference Documentation for core Plugins
Sonatype Resources
http://www.sonatype.com/resource-
center.html
Free Books
Videos
Lab 1: Learning Resources
https://tech.lds.org/wiki/Introduction_to_
Maven#Lab_1_Learning_Resources
Maven POM
https://tech.lds.org/wiki/Introduction_to_
Maven#Lab_2_Create_a_Maven_Project
Maven and Dependencies
<project>
...
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
Maven Repositories
<project>
...
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.0.5.RELEASE</version>
<optional>true</optional>
</dependency>
</dependencies>
</project>
Dependency Management
https://tech.lds.org/wiki/Introduction_to_
Maven#Lab_3_Manage_Maven_Depend
encies
Summary