Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Avatar Maven

1,995 views

Published on

See how Maven and the Last Airbender are similar. Quick presentation on helpful maven tips, maven 3, and mvnsh.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Avatar Maven

  1. 1. by<br />James Lorenzen<br />1<br />
  2. 2. Which Resembles Maven?<br />2<br />
  3. 3. Builds<br />Dependencies<br />Reporting<br />Convention<br />3<br />
  4. 4. Frustrated?<br />4<br />
  5. 5. archetype<br />Anti-Profiles<br />gmavenplugin<br />Tips<br />Create SNAPSHOT<br />POM is code<br />Maven properties<br />Depend Releases<br />dependency:tree<br /> !maven<br />5<br />
  6. 6. gmaven<br /><configuration><br /> <source><br /> def file = "$pom.basedir/target/${project.artifactId}-${project.version}.${project.packaging}"<br /> def ear = new File(file)<br /> log.info("${ear?.length()}");<br /> def maxsize = project.properties['ear.maxsize'];<br /> if (ear?.length() > maxsize?.toInteger()) {<br /> fail("EAR Exceeds maximum size allowed.");<br /> }<br /> </source><br /></configuration><br />6<br />Ron Alleva gmaven Example<br />
  7. 7. Useful mvncmds<br />mvn –pl core,netcds-ws install<br />mvn –pl netcds-ws –am install<br />mvn –pl core –amd install<br />7-13<br />
  8. 8. Backwards Compatible<br />Been out for 16 months<br />Polyglot<br />mvnsh<br />Maven 3<br />8<br />
  9. 9. Backwards Compatible<br />maven 3<br />maven 2<br />Compatibility Matrix<br />9<br />
  10. 10. Groovy<br />Ruby<br />Polyglot<br />Scala<br />YAML<br />Polyglot Maven<br />10<br />
  11. 11. project {<br />groupId 'foo'<br />artifactId 'bar'<br /> version '1.0'<br />}<br />dependency('foo:bar:1.0')<br />goals('compile', 'execute')<br />Groovy POM<br />11<br />
  12. 12. mvnsh<br />Pre-loaded shell environment<br />Speeds up build times<br />Based on Maven 3<br />Therefore can work with Maven 2 projects<br />History<br />Color Coded<br />Alias<br />Tab completion<br />Growl support<br />mvnsh<br />12<br />
  13. 13. Jason van Zyl<br />“If you use mvnsh and find problems the turn around time for fixes is usually a day or two. Maven 3.x is better then any version of Maven 2.x and the ITs we have for Maven are in an independent project. That's mean we run the same body of tests across multiple versions of Maven and Maven 3.x passes far more then Maven 2.x. Maven 3.x just gets fixed faster. You would honestly be better off using the Maven Shell.”<br />13-13<br />How to Speed up Maven<br />
  14. 14. Competition<br />Gradle<br />Buildr<br /><ul><li> groovy
  15. 15. grails and hibernate
  16. 16. ruby</li></ul>14<br />Will Hibernate Switch to Gradle?<br />
  17. 17. Maven’s not perfect, but not many projects are. Pulling wisdom from multiple places can only improve the end solution.<br />15<br />

×