First a big thanks toPackt Publishing for having sent me this book to review! I did enjoy going through this book, while I did not learn a lot of new stuff (I am using Apache Maven daily since 2006!), I found it to be concise and would recommend it anytime to any of my colleagues. But let’s go through my review of this cookbook of over 50 recipes towards optimal Java Software Engineering with Maven 3:
Apache Maven 3 Cookbook is a clear, precise, well-written book that gives readers clear recipes for the release process using Apache Maven 3. The authors give a step-by-step account of expectations and hurdles for software development.
The first few chapters quickly bring you to the point to be comfortable using Maven on straightforward projects, and the later chapters provide even more recipes examples on subjects like running a Repository Manager, Writing Plugins, and details on various techniques. The book also covers numerous real world software delivery issues such as multi-module projects, web/enterprise projects, dependency management, automatic testing and documentation.
To sum up key points from this 224 pages book in a few bullets: Chapter 1: Basics of Apache Maven: Setting up Apache Maven on Windows/Linux/Mac, Creating a new project, Understanding the Project Object Model, build lifecycle and build profiles, Chapter 2: Software Engineering Techniques: Build automation, modularization, Dependency management, Source code quality check, Test Driven Development (TDD), Acceptance testing automation and Deployment automation, Chapter 3: Agile Team Collaboration: Creating centralized remote repositories, Performing continuous integration with Hudson, Integrating source code management, Team integration with Apache Maven, Implementing environment integration, Distributed development and Working in offline mode, Chapter 4: Reporting and Documentation: javadocs, unit tests, coverage reports and Maven dashboard setup, Chapter 5: Java Development with Maven: Java web application, J2EE, Spring, Hibernate and JBoss SEAM development, Chapter 6: Google Development with Maven: Android and GWT (Google Web Toolkit), Google App Engine deployment, Chapter 7: Scala, Groovy, and Adobe Flex Chapter 8: IDE Integration Chapter 9: Extending Apache Maven: creating plugins using Java, Apache ANT or Ruby,
The author Srirangan go into detail in describing each of these themes.&160;
I recommend you this book if If you need to learn Apache Maven quickly, you can go through the recipes and examples and come away with a good knowledge of Maven. If you are currently implementing Apache Maven for the first time in your development process and feel a bit lost by the lack of clear examples that just run. If you want to use proven solutions to real common engineering challenges: this book will save you a lot of time!
if you want to be able to deliver your software to any target environment, using continuous delivery processes, chances are high that Apache Maven is the right tool for this job, and this book should be part of your technical library, beside also of course the free online book of Sonatype Maven: The Complete Reference