Independent jars
Brought to you by:
unsaved
When we get far enough along, each "component" (i.e.,
Server, Router, etc.) should have its own
implementation source branch, like
JAMAMA_HOME/src/compimpl/smtprouter
JAMAMA_HOME/src/compimpl/mitjdbcrepository
JAMAMA_HOME/src/compimpl/aliasesrouter
and each would have a corresponding classes branch and
jar file. Instead of loading everything from the system
classloader, we would use a custom classloader (either
extending java.lang.ClassLoader or using one of the
customizable JMX Classloaders) to load components from
each jar without visibility into other implementation
jars (other than perhaps a shared impl jar).