Question

I'm using maven from a few time, and I used release plugin only one time. Now I'm working on a modular project the look like to this:

enter image description here

Now I'm reading some things about the release of a modular project and I saw that some people use a same version for all modules, but in this case how Can i manage upgrade and bug fixing on the modules. Summarizing I'm really confused on this topic and I want to ask you some suggestion on how to begin to address this problem.

Was it helpful?

Solution

We also have a similar structure of modules. Each in its own maven project.
Each module has its own life-cycle and its own version.
Using your module names -

You want to upgrade the services module

  • You release a new version of services
  • You update the rest, admin-webapp and webapp with the services new version
  • You build them and release them

This methodology requires that you manage the dependencies properly.
We try to keep it simple, but with many modules, you can get in to a dependency hell.

Another option is to keep all modules in a single, multi-module maven project

  • Where you have a single version for all modules (parent pom)
  • You build all the project, releasing all modules with each new change

Makes an easy life of managing dependencies, but many unneeded releases.

I think both options are valid. You have to see what your team will feel easy to manage and scale over time.

I hope this helps.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top