Message-ID: <1737785694.301571.1369141254041.JavaMail.email@example.com> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_301570_1666440926.1369141254041" ------=_Part_301570_1666440926.1369141254041 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
One nice feature of maven is the simplicity of mapping multiple = completely self-contained projects together. For example, a company was tw= o seperate teams that work on Project A and Project B. Between the two of = them they have a set of shared Components.
Project A and Project B can be setup independently of each other, and th= e Components can be setup as a Project C with its own root pom that builds = out all of the components. Developers now have two options, they can maint= ain two seperate projects of source, one of Project A (or B) and another of= Project C. Or they can simply mount the Project C in a subdirectory and r= eference it as a <module>project-c</module> in the parent pom o= f Project A and B. The build artifacts of Project C will automatically be = factored into the build environment.
not sure if this is a useful thought or not but..
root project pom: company.poms:project:version
projects pom: company:project:version
subprojects pom: company.project:subproject:version
Since the root pom isn't the same as the core project's pom (where the p= rimary project source is) you can't just refer to the root pom as the compa= ny:project:version since that would mean the project itself would have to h= ave some hokey artifact like company:project-core:version or something. So= to get away from that and maintain the project pom reference I went with t= he idea of company.poms:project:version.
I like it since the company has a project and that art= ifact has that project in it, and all projects at the company can use the c= ompany.poms:project setup so all top level root poms are in the same place = in the repository.
repo ends up like