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

Aleksandar Kostadinov akostadi at redhat.com
Tue Nov 4 09:11:15 EST 2008


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



More information about the jboss-development mailing list