Not sure if I understand everything correctly but as Achim pointed out - the order of deployment should have nothing to do with your dependency graph.
Once you deploy your bundles (in whatever order) they need to be resolved and then started. If they can not be resolved (due to missing dependencies for example) they would not be started. Typically the framework will try to resolve them again once something changes (like another bundle is deployed). So the moment those dependencies are provided (or more generally speaking bundle's requirements match the available capabilities) those should be started. Only after bundle is started it attempts to register service(s). Here more or less the same concept apply. Services will be started only after their dependencies are satisfied (how that happens depend on whether a framework is used and if so, how it is designed/configured) but at the end of the day it shouldn't matter in what order those are started. They may not be available for a while but eventually when everything is in place they should be started and wired properly. Now all that is true, assuming that all bundles/services take into account the very basic principle of OSGI - things can come and go at any time. If that is not the case then perhaps your application is not benefiting much from OSGi on first place. May be you should fix that or may be give up on OSGi (at least until you fix it). Personally I think the fact that a deployment order is significant, 99% of the time means something really poorly designed or overlooked. Best, Milen On Wed, Sep 9, 2015 at 1:28 PM, rcbandit <[email protected]> wrote: > Yes, it's because of rushing to complete the project with very little time > - > this is the result, poor quality. > > > > -- > View this message in context: > http://karaf.922171.n3.nabble.com/Install-list-of-jar-files-in-Karaf-4-0-1-tp4042400p4042427.html > Sent from the Karaf - Dev mailing list archive at Nabble.com. > -- http://about.me/milen
