2011/11/20

Book Review: Apache Maven 3 Cookbook

I have decided to review new book about Maven from Packt Publishing: Apache Maven 3 Cookbook by Srirangan promising on its cover "Quick anwers to common problems".

The book is divided to nine chapters:
  1. basics
    Maven installation and environment settings. Generating, compiling and testing simple project. POM structure, build lifecycle and profiles.
  2. software engineering techniques
    Modularization, dependency management, static code analysis, JUnit, Selenium.
  3. agile team collaboration
    Nexus, Hudson, version control, offline mode.
  4. reporting and documentation
    Mvn site, javadocs, test and code quality reports, dahsboard.
  5. Java development
    Building and running web application (jetty), JEE, Spring, Hibernate, Seam.
  6. Google development
    Android, GWT, App Engine.
  7. Scala, Groovy and Flex
  8. IDE integration
    Eclipse, NetBeans, Intellij IDEA
  9. extending Maven
    plugin development basics
The book is certainly not material for beginners. Some terms are used without former definition or even explaining. Experienced Maven users will already know or will be able to find the missing pieces but beginners must be terribly confused. I think providing at least a description of Maven's standard directory layout for project or repository would be beneficial.

It is not so much about Maven as I expected, and says nothing about what is new in Maven 3. It should be exhaustive at least in the purely Maven parts, but even there is not enough information to make me happy. I would expect a description of template languages in the part dedicated to site plugin.

If you like puzzles and do not mind to use internet to search for missing pieces or you just cannot recall some setting covered in the book, you will like the book. It can also be used as a good starting point to show what tools, frameworks or languages can be used from/with Maven - do you like Maven and wanted to try GWT or Scala ? The book helps to lower entrance barrier by providing examples how to get working "playground" project in no time.

Would I buy it ? No. My bookcase has limited capacity and since the necessity to use internet to fill the gaps or correct bugs (although not many) in the book, I will be better with the online sources only.

2 comments:

  1. Hi, I read you article. I started to read the cookbook and, as you said it's very tricky for a beginner like me. I would like to know if you have resources to suggest regarding maven?

    ReplyDelete
    Replies
    1. http://maven.apache.org/ - first of all learn the directory structure and life cycle, get used to dependency management. Then go for profiles and plugins, also leant the difference of parent and aggregator. For peace of mind I suggest to avoid all the site-related things (javadoc generation etc.), it's kind of broken all the time. For a particular problem, search internet :), you'll end in stackoverflow or in some blog.

      Delete