[infinispan-dev] Maven structure
Manik Surtani
manik at jboss.org
Wed Apr 1 08:27:29 EDT 2009
On 1 Apr 2009, at 13:21, Galder Zamarreno wrote:
>
>
> Manik Surtani wrote:
>> This stems from a discussion Adrian and I had about the maven
>> module structure for Infinispan and how it could change to be more
>> modular.
>
> What's the aim for making Infinispan more modular? Release individual
> modules independently? Make it easier for people to select which
> modules they need?
The last one. They will not be released independently, but it helps
consumers control bloat/dependencies. E.g., if you have a maven
project which just uses the core Infinispan API, you would just declare a
dependency on infinispan-core. If you also used a FileCacheStore, you
need not add anything, but if you used a BdbjeCacheStore you would add
a dependency on infinispan-cachestore-bdbje which in turn would pull down
bdbje jars.
> Do you expect different people to own different modules?
You mean from a development perspective? Not necessarily, although it
may naturally work out that way for smaller modules.
>> /pom.xml <-- parent POM, used to build/test the entire project
>> /project <- project details such as team and common factors across
>> all modules (Artifact Id: infinispan-project)
>> /distribution <-- aggregator POM to build a complete and coherent
>> distribution (Artifact Id: infinispan-distribution)
>> /core <-- core code + tests. (Artifact Id: infinispan-core)
>
> Shouldn't project/ and distribution/ just live under core/?
It could, but then you have issues where you may want to build/test
just core versus the entire distribution. There may be sense in
combining project and core though, since project is just a common
parent for all modules.
>
>
>> /cachestore/* <-- several sub-modules here, for cache stores that
>> have external dependencies. Such as JDBC, BDBJE, S3 so that
>> external dependencies can be mapped separately. Typical artifact
>> ids: infinispan-cachestore-bdbje
>
> So, each sub-module would have pom.xml? Would there also be another
> pom.xml at the root of cachestore/?
Maybe not at the root of cachestore. The subdirs are just for
organization and to make it clear that those modules are cachestore
modules.
Cheers
--
Manik Surtani
Lead, JBoss Cache
http://www.jbosscache.org
manik at jboss.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/infinispan-dev/attachments/20090401/213812a2/attachment-0001.html
More information about the infinispan-dev
mailing list