Import-Package should be better, because, as already mentioned, you can move a package from one package to another without changing the existing MANIFEST.MF client
But...
There is a practical reason to use Require-Bundle if you use Eclipse to develop your packages:
Eclipse does not use packages as permission units. He uses ligaments. That is, if you use one package of a package, Eclipse compiles your package without reporting any problems using the rest of the packages not imported from this package.
You might (you are a person) think that everything is in order and download your deployment kit, but ... your package will break at runtime.
I am sure of this, because today this problem (for me!).
A good solution would be to change the container of the Eclipse class, but ... if this is not done ... you could decide to avoid such problems requiring packages rather than packages by paying the indicated price (there is no backward compatible code between bundles).
Santiago Ruiz Oct 26 '16 at 15:18 2016-10-26 15:18
source share