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