Maven 3… so what?

36
Maven 3… so what? Abel Muiño senior consultant Nilistics, Inc. January 18th, 2011

description

These are the slides of my talk at the San Francisco Java User Group. They don't really stand on their own since there was a lot of hands-on demonstration, but are nice to browse anyway :-)

Transcript of Maven 3… so what?

Page 1: Maven 3… so what?

Maven 3… so what?

Abel Muiñosenior consultantNilistics, Inc.January 18th, 2011

Page 2: Maven 3… so what?

Abel Muiño

Page 3: Maven 3… so what?

Abel Muiño

Page 4: Maven 3… so what?

Abel Muiño

Page 5: Maven 3… so what?

Abel Muiño

Page 6: Maven 3… so what?
Page 7: Maven 3… so what?

IAM

Page 8: Maven 3… so what?

Maven1to maven2Fr

om

Page 9: Maven 3… so what?

maven 1 maven 2 maven 3original repository layout new repository layout drops maven 1 layout

many descriptor files pom.xml, settings.xml drops profiles.xml multiprojects are an

afterthoughtadded multiprojectsembedded use is an

afterthought

added embedderremoved reporting

ad-hoc build lifecycle defined build lifecycle parallel buildsreworked the internals

fasterreworked the internals

fasterjelly script plugins java plugins same java API

Page 10: Maven 3… so what?

Maven3UpgradeTh

e

Page 11: Maven 3… so what?

$ mvn --versionApache Maven 3.0.1 (r1038046; 2010-11-23 11:58:32+0100)

$ mvn clean install[INFO] --------------------------------------[INFO] BUILD SUCCESS[INFO] --------------------------------------

Page 12: Maven 3… so what?

Bigchangesso

me

Page 13: Maven 3… so what?

$ mvn package -T2C

Page 14: Maven 3… so what?

$ mvn site

Page 15: Maven 3… so what?

<profile> <id>maven-3</id> <activation> <file> <exists>${basedir}</exists> </file> </activation> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.0-beta-3</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <artifactId>maven-site-plugin</artifactId> <executions> <execution> <id>attach-descriptor</id> <goals> <goal>attach-descriptor</goal> </goals> </execution> </executions> </plugin> </plugins> </build></profile>

{ }

Mav

en2

com

pati

ble

Page 16: Maven 3… so what?

<profile> <id>maven-3</id> <activation> <file> <exists>${basedir}</exists> </file> </activation> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.0-beta-3</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <artifactId>maven-site-plugin</artifactId> <executions> <execution> <id>attach-descriptor</id> <goals> <goal>attach-descriptor</goal> </goals> </execution> </executions> </plugin> </plugins> </build></profile>

{ }

Mav

en2

com

pati

ble

Page 17: Maven 3… so what?

<profile> <id>maven-3</id> <activation> <file> <exists>${basedir}</exists> </file> </activation> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.0-beta-3</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <artifactId>maven-site-plugin</artifactId> <executions> <execution> <id>attach-descriptor</id> <goals> <goal>attach-descriptor</goal> </goals> </execution> </executions> </plugin> </plugins> </build></profile>

{ }

Mav

en2

com

pati

ble

Page 18: Maven 3… so what?

<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.0-beta-3</version>

<configuration><reportPlugins>

</reportPlugins></configuration>

</plugin> </plugins></build>M

aven

3 on

ly

Page 19: Maven 3… so what?

<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.0-beta-3</version>

<configuration><reportPlugins>

</reportPlugins></configuration>

</plugin> </plugins></build>M

aven

3 on

ly

Plugins from old reporting section

Page 20: Maven 3… so what?

TinyThingsTh

e

Page 21: Maven 3… so what?

Guidance built in

Page 22: Maven 3… so what?

I don't care ifit works on your machine

Page 23: Maven 3… so what?

I don't care ifit works on your machine

(We are not shipping your machine)

Page 24: Maven 3… so what?

NO profiles.xml

Page 25: Maven 3… so what?

maven 1 maven 2 maven 3original repository layout new repository layout drops maven 1 layout

many descriptor files pom.xml, settings.xml drops profiles.xml multiprojects are an

afterthoughtadded multiprojectsembedded use is an

afterthought

added embedderremoved reporting

ad-hoc build lifecycle defined build lifecycle parallel buildsreworked the internals

fasterreworked the internals

fasterjelly script plugins java plugins same java API

Page 26: Maven 3… so what?

maven 1 maven 2 maven 3original repository layout new repository layout drops maven 1 layout

many descriptor files pom.xml, settings.xml drops profiles.xml multiprojects are an

afterthoughtadded multiprojectsembedded use is an

afterthought

added embedderremoved reporting

ad-hoc build lifecycle defined build lifecycle parallel buildsreworked the internals

fasterreworked the internals

fasterjelly script plugins java plugins same java API

Page 27: Maven 3… so what?

Should youuse maven3?

Page 28: Maven 3… so what?

Should youuse maven3?

Page 29: Maven 3… so what?

Should youuse maven3?

Page 30: Maven 3… so what?

Should youuse maven3?

Page 31: Maven 3… so what?

Comesnext?W

hat

Page 32: Maven 3… so what?

Polyglot Maven

Page 33: Maven 3… so what?

maven shell

Page 35: Maven 3… so what?

Great Beyond: http://www.flickr.com/photos/tonyjcase/2191160470/

Dunechaser: http://www.flickr.com/photos/dunechaser/3385957499/

fedfil: http://www.flickr.com/photos/fedfil/1196374459/

eyesore9: http://www.flickr.com/photos/eyesore9/4502273643

steveIOW: http://www.flickr.com/photos/steveiow/3875381817/

Daniel Hoherd: http://www.flickr.com/photos/warzauwynn/2167374017/

James Jordan: http://www.flickr.com/photos/jamesjordan/187232931/

prettydaisies: http://www.flickr.com/photos/prettydaisies/327192177/

Hartwig HKD http://www.flickr.com/photos/h-k-d/3629569854/

Ernest Figueras: http://www.flickr.com/photos/ernestfigueras/5284736179/

Thanks for your pictures!

Used under CC license

Page 36: Maven 3… so what?

consulting for agilesoftware developmentnilistics.net