If the dependency is in the util bundle then provided that blueprint imports the AriesBundleTrackerCustomizer from util then blueprint shouldn't need to depend on org.osgi.framework.launch.
I have a feeling though that the blueprint bundle includes the util content, so that may be why it gets dragged in. Alasdair On 12 March 2010 14:57, Lin Sun <[email protected]> wrote: > I think the import package of org.osgi.framework.launch came from the > AriesBundleTrackerCustomizer in util package, as the blueprint > extender uses it optionally, when detecting the existence of composite > bundle factory service. > > So it should be optional transitive dependency for blueprint, while it > is currently marked as required, which is incorrect. > > Does this sound right? > > Lin > > > On Thu, Mar 11, 2010 at 2:46 PM, Guillaume Nodet <[email protected]> wrote: >> On Thu, Mar 11, 2010 at 19:54, Lin Sun <[email protected]> wrote: >>> I think the framework launch may be used by the blueprint extender to >>> detect blueprint bundles in child frameworks or the >>> AriesBundleTracker, when we detect the framework provides >>> CompositeBundleFactory service (which is based on old RFC 138). And >>> framework launch packages are provided by the osgi core 4.2 jar. I >>> think it is ok if we put it as optional. >> >> I don't think that's the case. The CompositeBundleFactory and >> everything related to composites are in the >> org.osgi.service.framework package. >> We need to try, but I think it's safe to remove that one. >> >>>>> * org.osgi.framework.launch : no idea where this one come from, i >>>>> can't find any reference in the whole project >>>> >>>> cool lets remove it >>> >>>>> * org.osgi.util.tracker : we may want to embed it >>> >>> This is provided by the osgi companion 4.2 jar. >> >> Yeah but we're trying to minimize the dependencies. Given it's only a >> few classes and not a service we depend on, embedding those would >> remove the additional dependency. The problem with the companion jar >> is that it is a big jar with optional imports. If you don't deploy >> the servlet api for example, the compendium will still resolve, but >> later you might run into problems if you want to deploy servlets. >> You'd have to refresh your compendium, leading to a restart of all >> blueprint applications. >> Might be a bit overkill ... >> >> >>> Lin >>> >> >> >> >> -- >> Cheers, >> Guillaume Nodet >> ------------------------ >> Blog: http://gnodet.blogspot.com/ >> ------------------------ >> Open Source SOA >> http://fusesource.com >> > -- Alasdair Nottingham [email protected]
