Importing packages from the main classloader
It's possible to access classes from outside of the OSGI by declaring their packages in the org.osgi.framework.system.packages.extra framework property. OSGI creates a synthetic System Bundle which declares these packages as exports. The effect is that within the OSGI container, these packages appear as if they're natively exported by a bundle.
The org.osgi.framework.system.packages.extra property is configured within the karaf/etc/custom.properties file. A Pentaho customized version is housed with the pentaho-karaf-assembly here.
OSGI doesn't support wildcarding of packages, making it cumbersome to manage. We've pre-processing the custom.properties on server startup to provide this wildcarding functionality.
Example:
org.apache.*,org.slf4j.*; version="1.7.7"
org.apache.* will be expand out to all packages with that base, with no versioning information. org.slf4j.* will expand out with the version appended to each package