The dev class path entries are prepended to the value of the Bundle-ClassPath header value. Normal delegation rules apply for the dev class path as if they are part of the bundle's Bundle-ClassPath. That roughly is the following:
1) Import-Package wires, if package is imported the search terminates at the provider of the import-package wire and the delegation stops.
2) Require-Bundle wires, each wire is check in order the bundle is required until a class/resource is found. If none found move to next step.
3) Bundles class path is checked, this includes the dev class path elements if they are specified. It also checks attached fragments class path elements. If nothing is found in all the available class path elements, move on to next step
4) If dynamic import is specified check if a dynamic resolution can find an import wire. If so delegate to the new import wire, this import wire is then used for all other loads from the package. If nothing is found the the class/resource is not found and applicable exception is thrown.
Tom
----- Original message -----
From: "Christoph Läubrich" <laeubi@xxxxxxxxxxxxxx>
Sent by: "equinox-dev" <equinox-dev-bounces@xxxxxxxxxxx>
To: equinox-dev@xxxxxxxxxxx
Cc:
Subject: [EXTERNAL] [equinox-dev] Classloader precedence of osgi.dev entries
Date: Sun, Apr 11, 2021 8:56 AM