[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] Strange class loading behaviour

See bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=178477 for the history.

When launching Equinox for the typical Eclipse usage we have a compatibility flag enabled that allows a last resort boot delegation. When launching Equinox standalone this compatibility flag is disabled.

Tom



Inactive hide details for Patrik Åkerfeldt ---01/29/2010 01:50:04 AM---Imagine a very simple bundle who's just printing javax.xPatrik Åkerfeldt ---01/29/2010 01:50:04 AM---Imagine a very simple bundle who's just printing javax.xml.parsers.ParserConfigurationException.class.getName() when started. R


From:

Patrik Åkerfeldt <patrik.akerfeldt@xxxxxxxxx>

To:

equinox-dev@xxxxxxxxxxx

Date:

01/29/2010 01:50 AM

Subject:

[equinox-dev] Strange class loading behaviour




Imagine a very simple bundle who's just printing javax.xml.parsers.ParserConfigurationException.class.getName() when started.

Running this with Equinox standalone yields a ClassNotFoundException.
"java -jar org.eclipse.osgi_3.5.1.R35x_v20090827.jar -configuration /home/stpaja/test/plugins/configuration/ -consoleLog"

Which is perfectly normal according the OSGi core specification which states that everything outside java.* must be imported (or implicitly loaded using boot delegation).

But, and here's the strange thing, when using a custom OSGi framework launcher the class name is printed and no ClassNotFoundException is thrown. I've implemented a very simple launcher which reads a config.ini file and installs/starts the bundles. It does not set any OSGi properties aside from those defined in config.ini.

The framework is started in the following manner:
java -cp my.launcher_1.0.0.jar:org.eclipse.osgi_3.5.1.R35x_v20090827.jar my.launcher.OsgiLauncher /home/stpaja/test/plugins/configuration/config.ini /home/stpaja/test/plugins/

Here's the content of config.ini (the same config.ini is used in both startups):
osgi.console=5555
osgi.bundles=aaaa_1.0.0.jar@start

Why is it that the bundle class loader finds javax.xml.parsers.ParserConfigurationException when started from a custom launcher instead of Equinox?

Thanks,
-Patrik Åkerfeldt_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev


GIF image

GIF image