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]

Reply via email to