[jboss-dev] new shared JBOSS_HOME/server/lib directory

Andrew Lee Rubinger andrew.rubinger at redhat.com
Wed Nov 12 18:03:07 EST 2008


Dimitris Andreadis wrote:
> Ok, so after this discussion the shared library directory has moved to 
> JBOSS_HOME/common/lib.
> 
> 2 new properties were introduced:
> 
> - jboss.common.base.url defaulting to ${jboss.home.url}/common
> - jboss.common.lib.url defaulting to ${jboss.common.base.url}/lib
> 
> (In case we want to introduce other common stuff, configuration or 
> otherwise)
> 
> The jboss.shared.lib.url references were removed.
> 
> Cheers
> /Dimitris
> 
> PS
> Andrew, maybe you want to re-synch the forked bootstrap project.

Yes, and the EJB3 Plugin installer.

Is there a JBAS JIRA for this new move?

S,
ALR

> 
> Brian Stansberry wrote:
>> Dimitris Andreadis wrote:
>>> Any preferences between
>>>
>>> JBOSS_HOME/common/lib
>>> vs
>>> JBOSS_HOME/shared/lib?
>>>
>>
>> Both bring to mind the Tomcat 5.5 and earlier $CATALINA_HOME/common/lib
>> and $CATALINA_HOME/shared/lib. Probably will have the same association 
>> for others, so I recommend we consider the meaning of those and try to 
>> be consistent.
>>
>> Those directories each serves as a resource location for a 
>> classloader, described as follows [1]:
>>
>> Common - This class loader contains additional classes that are made 
>> visible to both Tomcat internal classes and to all web applications. 
>> Normally, application classes should NOT  be placed here.
>>
>> Shared - This class loader is the place to put classes and resources 
>> that you wish to share across ALL  web applications (unless Tomcat 
>> internal classes also need access, in which case you should put them 
>> in the Common  class loader instead).
>>
>>
>> Neither of those descriptions exactly matches the JBoss directory, 
>> since "application classes should NOT be placed " in 
>> $JBOSS_HOME/common/lib isn't technically true.  But still, I think 
>> "common" better matches what we are trying to do, since jars placed in 
>> it are most definitely meant to be visible to internal JBoss classes.
>>
>> Note that in Tomcat 6, common/lib and shared/lib are gone, with 
>> common/lib functionally replaced by a plain lib/ [2]
>>
>> [1] http://tomcat.apache.org/tomcat-5.5-doc/class-loader-howto.html
>> [2] http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html
>>
>>

-- 
Andrew Lee Rubinger
Sr. Software Engineer
JBoss, a division of Red Hat, Inc.
http://exitcondition.alrubinger.com



More information about the jboss-development mailing list