On Fri, Aug 9, 2013 at 9:45 PM, Rainer Jung <[email protected]> wrote:
> I have a situation where the user.classpath contains many jar files > (about 100). Listing all of the jar files is tedious, difficult to > maintain and not in any place where one can configure user.classpath > possible or easy because of line length restrictions. > > Looking at the code I saw that in some places jar files lying in > directories configured for class search are automatically also searched, > but sometimes not. > > There are three cases: > > - not auto-searching the jar files: > > o.a.jmeter.JMeter start() calls updateClassLoader() calls updatePath() > for search_paths and user.classpath. updatePath() calls > NewDriver.addPath() for each path contained in those settings. Finally > NewDriver.addPath() adds them to the system property "java.class.path" > without listing all jar files contained in directories. > > So the class loader itself does not know about such jar files. > > - auto-searching such jar files in ClassFinder.findClassesThatExtend() > using search_paths for JMeter extension: > > In findClassesThatExtend() a call to addJarsInPath() will automatically > add all jar files found in a configured directory. > > - auto-searching jar files in user.classpath for JUnit setup: > > In JUnitTestSamplerGui the user.classpath property is used to search for > classes extending Test or TestCase but the search is based on > ClassFinder, so will automatically search through jar files. > > I propose to also add the jar files in the first case, the updatePath > setting up the class loader. I guess the only concern would be the speed > of class loading? IMHO if there are only few such jar files, then there > should be no problem and if there are many such jar files, then not > needing to configure them all is really helpful. So the remaining case > is if there are many jar files auto-detected which are not really > needed. That means it might make sense to make the behavior configurable > with default the old behavior. > > Comments? > > Not clear for me. Could you illustrate with an example ? thanks > Regards, > > Rainer > -- Cordialement. Philippe Mouawad.
