Everyone,

After looking around in the maven documentation, I realized the way we are 
specifying dependencies is not quite right for a large project such as ours.

Currently, almost every project declare their own dependencies and version 
number of the dependent jar.  For those of us who are conscious of the version 
number properties declared in the cloudstack pom file, we follow that example 
but in many places, the version numbers are actually hard coded, probably 
because the writer is not aware of this.

Maven actually has a way to do this.  In the master pom file, we can declare in 
the <dependencyManagment> tags all of the third party dependencies we need and 
their version numbers.  And then each individual module can declare their 
dependency without version number, which defaults to the version declared by 
CloudStack's master pom.  If a version number is declared in the module's pom, 
it overrides the master's version number but there's a warning about this 
override.

Sounds good?  If so I'll do a quick change to move it over.

--Alex

Reply via email to