Hi all, I'm trying to use maven bundle plugin to generate the Import-Package header for packages that only contain classes that are only referenced via reflection. These are from a third-party library.
For example, this library contains: com.foo.type.Foo com.foo.type.impl.FooImpl com.foo.service.FooService com.foo.service.properties FooService reads foo.properties and find out what classes implement Foo and instantiate it. Now because there are two bundles (bundle 0 and bundle 9) exposing this library. If the packages are imported from bundle 0, the code will break because bundle0 does not export some required third-party library packages (which again contains classes instantiated via reflection). If the packages are imported from bundle 9, it works. So I need to instruct bnd to import packages from bundle 9. I put in the following code: <Require-Bundle>bundle9.name</Require-Bundle> <Import-Package>com.foo*;com.foo.type*;com.foo.type.impl*;bundle-symbolic-name=" bundle9.name"</Import-Package> But the generated MANIFEST.MF has only the following: com.foo.type;bundle-symbolic-name="bundle9.name", com.foo.service;bundle-symbolic-name="bundle9.name" com.foo.type.impl is missing. So when this is deployed, I got this from FelixOsgiContainerManager: Constraint violation for 16.0 detected; module can see com.foo.type.impl from [9.0] and com.foo.type.impl from [0]. It seems bnd tool somehow determines the classes in the impl sub-package are not used and then does not include the instructions explicitly spelled out for this package. Is there a way to override this behavior? Thanks in advance. Alex

