Download - Maven 3… so what?

Transcript
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