I'm not sure that class loading order is even relevant here. The stack
trace linked by Brian was an OSGi resolution error... resolution happens
before a Bundle ClassLoader is constructed and therefore before the bundle
attempts to load any class name.

Neil

On Sat, 22 Aug 2020 at 09:50, Mark Hoffmann <mark.hoffm...@web.de> wrote:

> Hi,
>
> I dont think that this is final solution for that problem.
>
> The class finding search order is defined in OSGi:
>
>
> https://docs.osgi.org/specification/osgi.core/7.0.0/framework.module.html#framework.module.overallsearchorder
>
> That mean finding a class to be loaded will be initially done using the
> boot delegation (Step 2 in this case). If defined correctly the following
> will happen:
>
> Java 1.8 - delegate to parent class loader an load javax.annotation from
> there (no matter, if you have an bundle provided for that package)
>
> Java 11 - cannot find javax.annotation over boot-delegation, go on with
> Import-Package or Require-Bundle
>
> Either provide a org.osgi.framework.bootdelegation=javax.* as property to
> activate boot-delegation or you can use the existing profiles instead.
>
> The Profiles are defined in Equinox:
>
>
> https://github.com/eclipse/rt.equinox.framework/blob/master/bundles/org.eclipse.osgi/JavaSE-1.8.profile
>
> You can find the property: org.osgi.framework.bootdelegation there with a
> definition for javax.*
>
> To make Equinox use this profile (I dont know, if this happens by default)
> via launcher, you should provide the osgi.java.profile=file:/
> <your-path>/JavaSE-1.8.profile
>
> If you take the profile, then you have to additionally provide the
> property: osgi.java.profile.bootdelegation=override, so that Equinox takes
> the profile boot delegation entries. instead of already defined ones
>
> With the correct boot-delegation configuration, always that same class
> loader will be taken for this constellation, no matter, if in Java 1.8 or
> 11. The same applies to JAXB problems.
>
> https://wiki.eclipse.org/Equinox_Boot_Delegation
>
>
> Regards,
>
> Mark
>
>
> Am 21.08.20 um 22:43 schrieb Brian de Alwis:
>
> Unfortunately javax.annotation *package-uses* issues have returned
> <https://bugs.eclipse.org/bugs/show_bug.cgi?id=566085> :(
>
> The effort to replace the no-longer maintained Spotify Docker
> <https://bugs.eclipse.org/bugs/show_bug.cgi?id=558284>Client
> <https://bugs.eclipse.org/bugs/show_bug.cgi?id=558284> (bug 558284)
> <https://bugs.eclipse.org/bugs/show_bug.cgi?id=558284> introduced a new
> version of the javax.annotation bundle into Orbit
> <https://git.eclipse.org/r/c/orbit/orbit-recipes/+/161789> based on Jakarta
> EE’s somewhat recently released javax.annotation bundle with version 1.3.5
> <https://search.maven.org/artifact/jakarta.annotation/jakarta.annotation-api/1.3.5/jar>.
> This bundle doesn’t use the same approach used for the javax.annotation
> 1.2.0 bundle <https://bugs.eclipse.org/bugs/show_bug.cgi?id=462686#c27> to
> use import-what-you-export *and* requiring system.bundle.
>
> The issue only occurs on Java 8 and has been seen in the wild
> <https://github.com/GoogleCloudPlatform/google-cloud-eclipse/issues/3623>.
> I suspect it has not been more widespread due to increased adoption of Java
> 11.
>
> I’ve pushed up a fix to the javax.annotation 1.3.5 bundle
> <https://git.eclipse.org/r/c/orbit/orbit-recipes/+/167718>.  I think the
> risk is small, but given that we’re in RC season, it would be good to get
> some more eyes on this.
>
> If you have concerns, please comment on Bug 566085
> <https://bugs.eclipse.org/bugs/show_bug.cgi?id=566085>.
>
> Brian.
>
> _______________________________________________
> equinox-dev mailing listequinox-...@eclipse.org
> To unsubscribe from this list, visit 
> https://www.eclipse.org/mailman/listinfo/equinox-dev
>
> --
> Mark Hoffmann
>
> E-Mail: mark.hoffm...@web.de
>
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@eclipse.org
> To unsubscribe from this list, visit
> https://www.eclipse.org/mailman/listinfo/equinox-dev
>
_______________________________________________
equinox-dev mailing list
equinox-dev@eclipse.org
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/equinox-dev

Reply via email to