felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff McAffer <Jeff_McAf...@ca.ibm.com>
Subject Re: Issues with installing bundles by reference
Date Fri, 24 Feb 2006 23:08:48 GMT
Marcel Offermans <marrs@xs4all.nl> wrote on 02/24/2006 05:06:59 PM:
> The first scenario I thought of was when developing and deploying 
> being able to actually have bundles that reference a directory structure 

> would eliminate the need to (re)build bundle jars (and after triggering 
> update in the framework, having that framework extract them again). This 

> scenario seems to be used in J2EE appservers too (for .war and .ear 

Certainly this is an important one however it actually requires more than 
just install by reference.  For example, if you have some project 
(whatever) of source and you build it and want to install the result by 
reference as a bundle, the result has to be in the shape the bundle 
describes.  In particular, the Bundle-Classpath has to correctly identify 
the location of hte classes and resources.  Since the common case is to 
have a classpath of . then it means that the package dirs for the classes 
have to be directly in the parent of the MANIFEST.MF file or you have to 
implement a mechanism that allows you to map the classpath elements to 
build locations.  The latter is what we do in Eclipse to enable PDE's 
direct launching of plugins/projects.  This allows people to structure 
their output locations however they want and still just write code, save 
and launch.  No explicit compile or build steps needed.

> What other scenario's did you have in mind (if any)?

The other main usecase we have for by-reference is scaleablity.  If your 
system is actually installed on disk (as opposed to downloaded 
dynamically) then installing bundles by value duplicates the storage 
required.  Further, if you have the same disk-based bundle in multiple 
configurations/profiles, you would have to have one copy for each.  The 
approach we have taken is to allow for pools of bundles to be placed on 
disk and then define configurations that identify the plugins from that 
pool that should be run together.  No duplication, no copying, ...  Since 
some of the systems built on Eclipse are >1GB, this is an obvious win.

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message