Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-core-dev] Bundles which do not require org.eclipse.osgi


In this week I-Build the OSGi framework no longer gives access to non-java.* packages provided by the JVM for free.  Previously we used to always delegate to the boot classloader before delegating to OSGi for all class loads.  This means non-java.* packages (i.e. java.xml.parsers) are not accessible unless the bundle imports the package (using Import-Package: java.xml.parsers) or requires the system.bundle (using Require-Bundle: org.eclipse.osgi).  Most bundles in eclipse require org.eclipse.osgi indirectly because they require org.eclipse.core.runtime which reexports org.eclipse.osgi.  This means most bundles in eclipse do get access to the packages provided by the JVM profile.  The following bundles do not require org.eclipse.osgi directly or indirectly.

org.apache.ant
org.apache.lucene
org.eclipse.core.boot
org.eclipse.jdt
org.eclipse.jdt.doc.isv
org.eclipse.jdt.doc.user
org.eclipse.jdt.junit.runtime
org.eclipse.jdt.source
org.eclipse.pde.doc.user
org.eclipse.pde.source
org.eclipse.platform
org.eclipse.platform.doc.isv
org.eclipse.platform.doc.user
org.eclipse.platform.source
org.eclipse.sdk
org.eclipse.swt
org.eclipse.text
org.junit

I suspect the following bundles should require the org.eclipse.osgi bundle incase they access any non-java.* packages from the JVM:

org.apache.ant
org.apache.lucene
org.eclipse.swt
org.eclipse.text
org.junit

The rest of the bundles which do not require org.eclipse.osgi do not have any actual code in them so there is no need to require anything.  I want to get confirmation from the core team that we think this is necessary before I post to the general eclispe dev mailing list requesting these bundles update their manifests to Require-Bundle: org.eclipse.osgi.

Thomas Watson

Back to the top