Util being static is really the main issue.  See the OsgiClassLoader ctor.  It has to loop through the BundleContext and discover all activated Bundles (pretty expensive).  In #2393, my (misguided) attempts to correct this was the AggregatedClassLoader concept that was carried by the GlobalConfiguration and Cache.  But really, I think using the .util concepts in a non-static way would work as well.  Am I correct that the GlobalConfiguration/Cache #classLoader eventually winds up here as the appClassLoader?

If that's the case, make Util and friends non-static, initialize once on GlobalConfiguration, and use whenever possible?  Other circumstances (the Parsers, for ex), could carry their own instances.

Alternatives?  Does the issue at least make sense?