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

Dimitris Andreadis dandread at redhat.com
Tue Nov 4 11:36:09 EST 2008


My initial proposal was for JBOSS_HOME/shared/lib
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4182964

Johnson, Peter wrote:
> Please do not locate it at server/lib. As was mentioned before, directories under 'server' have been configurations since forever(?). If you really need a common location, call it common/lib.
> 
> Peter Johnson
> 
> -----Original Message-----
> From: jboss-development-bounces at lists.jboss.org [mailto:jboss-development-bounces at lists.jboss.org] On Behalf Of Aleksandar Kostadinov
> Sent: Tuesday, November 04, 2008 6:11 AM
> To: JBoss.org development list
> Subject: Re: [jboss-dev] new shared JBOSS_HOME/server/lib directory
> 
> Adrian Brock wrote, On 11/04/2008 03:01 PM (EEST):
>> On Tue, 2008-11-04 at 14:47 +0200, Aleksandar Kostadinov wrote:
>>> I'm not the best one to give opinion on that but here it is.
>>>
>>> The change will complicate things and confuse users. As well doesn't
>>> seem scalable to me. When we have more server configurations,
>> Its more scalable than having N copies of the jars in the
>> distribution where N is the number of configurations. :-)
> 
> Yeah, but what I suggested is even better 8-)
> 
>>> we'll need
>>> more lib directories (platforms more affected)...
>> This is just a temporary solution until our deployments actually
>> specify what they use (classloading dependencies).
>> Once that is done we would only need one
>> repository/lib folder which would be loaded from as required
>> and the current server/[conf]/lib folder for people that
>> are too lazy to specify their dependencies. :-)
> 
> A temporary solution that we would need to carry for 5 years+ if not
> fixed for EAP 5. I *feel* that at least we in QE will have troubles with
> our scripts with changing layouts.
> 
>>> The change could break
>>> user utilities that expect the old layout, etc.
>> Its JBoss5 so although change for change sake is not good,
>> something that has benefit (smaller distribution size)
>> is something that can change in a major release.
>>
>>> IMHO a straightforward approach will be to remove the
>>> JBOSS_HOME/server/*/lib directories altogether and have all libraries in
>>> JBOSS_HOME/lib or another directory. Then appropriate libraries for
>>> every server configuration be selected in a configuration file
>>> (conf/jboss-service.xml?).
>>>
>> That makes a user's life harder. They have to modify the
>> configuration file to add shared jars (e.g. a jdbc driver)
>> whereas before they could just drop it in server/[conf]/lib
>> without further configuration steps.
> 
> If you leave the server/[conf]/lib for user libs and use configuration
> file for our shared libs then I see no drawbacks for the users.
> 
>> I wouldn't have a problem with having all our jars
>> in the shared lib folder and explicitly list them
>> in jboss-service.xml according to what the configuration
>> uses.
>> i.e. server/all/lib would be empty but
>> server/all/conf/jboss-service.xml would list more jars
>> than server/default/lib
>>
>> This would also mean that the minimal config is smaller,
>> nothin in server/minimal/lib
>>
>>> Best Regards,
>>> Aleksandar
>>>
>>> Dimitris Andreadis wrote, On 11/04/2008 12:38 PM (EEST):
>>>> The new JBOSS_HOME/server/lib directory pointed to at by the
>>>> jboss.shared.lib.url property currently contains the libraries shared by
>>>> the default and all configurations.
>>>>
>>>> So server/default/lib is now empty and server/all/lib contains only:
>>>>
>>>> avalon-framework.jar
>>>> hibernate-jbosscache2.jar
>>>> jacorb.jar
>>>> jbosscache-core.jar
>>>> jbosscache-pojo.jar
>>>> jgroups.jar
>>>>
>>>> The new directory is added to the classpath in conf/jboss-service.xml:
>>>>
>>>>    <classpath codebase="${jboss.server.lib.url}" archives="*"/>
>>>>    <classpath codebase="${jboss.shared.lib.url}" archives="*"/>
>>>>
>>>> The minimal config remains unchanged.
>>>>
>>>> https://jira.jboss.org/jira/browse/JBAS-6158
>>>>
>>>> You probably need to cleanup your build/output/** directory to pick up
>>>> the change at your next svn update.
>>>> _______________________________________________
>>>> jboss-development mailing list
>>>> jboss-development at lists.jboss.org
>>>> https://lists.jboss.org/mailman/listinfo/jboss-development
>>> _______________________________________________
>>> jboss-development mailing list
>>> jboss-development at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/jboss-development
> _______________________________________________
> jboss-development mailing list
> jboss-development at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-development
> 
> _______________________________________________
> jboss-development mailing list
> jboss-development at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-development



More information about the jboss-development mailing list