Hi,

I was wondering if anyone knows or has experience with a system that would
track and consolidate dependencies on a project composed of several
sub-projects.

Assume a project P with 10 sub-projects (SP1...SP10). Each of those
sub-projects are located in its own space and have its own lifecycle
(release versioning, etc). But ultimately, the project P needs to be
released as a set of coherent *tested* dependencies. For various reasons,
some sub-projects have to keep different dependencies of the target for
backward compatibility reason.

There are two deliverables to this:

1. Provide a single/coherent dependencyManagement section so that users
using P do not have to care about the different versions of the
sub-projects: they use P and all the required dependencies are pulled
automatically
2. Build configs that *force* each sub-project to run with the list of
dependencies for the project (to ensure all tests pass, etc). This is to be
used alongside the regular build job for validation purpose

I started to look at this and my first trial was to generate a report with
all the dependencies of each project and build a consolidated report that I
can match against the candidates. This would help manage the first goal as
if a dependency gets added, removed or updated, the global
dependencyManagement has to be impacted manually (do we upgrade or not,
etc).

For the second part, it's not easy to force a dependency change in Maven,
especially if the version has been specified at the project level.

Thanks for reading that far. If you have any idea or know any organisation
that tried to implement that, I'd be interested

Thanks!
S.

Reply via email to