I’ve been working for the last 5 months on build & deploy type projects. Both have been using Maven. I had started off convinced that it was pure evil. Many colleagues claim there is no place for it. I don’t know if I am convinced. Being with a central build and deploy team, responsible for making sure that up to 20 separate projects can be built and deployed to multiple environments, at differing schedules, Maven has made part of this pretty simple. Many arguments I hear seem very single project focused. They also seem very focused on only open-source dependencies. They also argue that they can manage their dependencies better by themselves, but theres the rub, “Themselves“. With 20 projects possibly managing themselves, and each having to share some environments, and all having to exist together as a product, that would be chaos. As my current client has observed.
Maven has been working (albeit with some pain). I do agree that a better way needs to be figured out and implemented, but I am not loosing any sleep about it.
Some of the basic concepts that Maven is trying to introduce are valid. It’s just done poorly. This doesn’t mean that the concepts don’t still need to be addressed.
So I would say that it is useful to manage dependencies in a consistent fashion and yet this still does not lead to Maven as the answer.