There's a bug in The the plainClassName method of the
The problem is, this method consults the context class
loader *before* it checks the user-specified
Because of this, under JDK1.2 or above, no matter what
you specify to the setClassLoader method, it won't be
Nowadays there are many applications (such as Ant,
Maven) that requires a rather sophisticated class
loading scheme that doesn't use the context class loader.
This bug makes it impossible to use bsh in such
context, and it defeats the purpose of the
The proper look up order shoud be:
1. externalClassLoader, if supplied.
2. contextClassLoader, if available.