We currently have jbossall-client.jar, which is all of the runtime
libraries required to invoke upon a JBoss instance remote to the current
JVM.
With Embedded AS entering the mix I'm finding the need for a new
assembly containing only the compilation resources required of a client:
* Everything in org.jboss.javaee (Servlet, EJB3, JMS, etc JavaEE
annotations/stuff)
* All of our proprietary extensions (for instance ejb3-ext-api)
jbossall-client.jar is overkill for this case; it'd leak out too many
internals. Consider the following:
* Unit Test
* Should require minimal dependencies
* Launched with the required deps upon the classpath
* Classes in classpath JARs loaded by application ClassLoader
* Embedded launcher comes along, pointing to JBOSS_HOME, makes a
URLClassLoader to bring in all of the AS runtime deps
* Something loaded by Application ClassLoader references something not
in jbossall-client.jar (leak), but visible to the URLCL.
* NoClassDefFoundError, because we've just tried to do parent>child
delegation.
In short I'd like to have one dependency that we can give our users:
"Bring in this one JAR and that's everything you need to compile an
integration test for an application using JBossAS". (In actuality it
may be 2 JARs, one for the deps and one for the Embedded launcher, but
you get the point).
S,
ALR
--
Andrew Lee Rubinger
Sr. Software Engineer
JBoss by Red Hat
http://exitcondition.alrubinger.com