Question: How can an Eclipse bundle (eg. within activator code) find the dependent Bundle instances at runtime? I would like to find the bundles that Eclipse has choosen to satisfy the dependency requirements, I do not want to interprete the manifest myself. 

An example: I would like to find all resources named "marker.txt" in all bundles on which my current bundle depends upon. Also the transitive dependencies. In order to accomplish this I need to be able to find all these bundles to begin with.

Answer: 
There is no easy way to determine the dependency.
The best way is to go through the PackageAdmin interface. See the OSGi spec for PackageAdmin and getImportingBundles in particular: [http://www.osgi.org/javadoc/r4v42/org/osgi/service/packageadmin/ExportedPackage.html#getImportingBundles()](http://www.osgi.org/javadoc/r4v42/org/osgi/service/packageadmin/ExportedPackage.html#getImportingBundles%28%29)

You need to determine for all installed bundles, which one exports one or more packages that your bundle is importing. The easiest way to achieve this is to call *PackageAdmin.getExportedPackages(Bundle bundle)* with bundles = *null*. This returns an array of all exported packages. You then need to iterate of this array and call *ExportPackage.getImportingBundles()*.
You can open an OSGi console and issue the following commands:

```
ss

```

To the the list of bundles, including the numeric id

```
bundle <id>

```

to get more information, including dependencies.

You should also try

```
help

```

to get more commands