using jar packed bundles in rmap [message #520970] |
Tue, 16 March 2010 01:02 |
Flavio Donze Messages: 211 Registered: July 2009 Location: Switzerland |
Senior Member |
|
|
Hello
Since I can not use a directory location as part of my target definition (should I add a feature request?):
http://www.eclipse.org/forums/index.php?t=msg&th=163429& amp;start=0&
I'm trying to add a local directory provider in my rmap. The directory contains a bunch of springsource bundles (normal OSGi bundles) which are packed as jars.
It seems that buckminster is not able to read those bundles. Is this so? If yes why and is there a workaround? Or is just my configuration wrong....
here part of my rmap file:
<searchPath name="bundlepool">
<provider readerType="local" componentTypes="osgi.bundle,buckminster"
mutable="false" source="false">
<uri format="C:/Programme/Hudson/bundlepool/{0}">
<bc:propertyRef key="buckminster.component" />
</uri>
</provider>
</searchPath>
<locator searchPathRef="resources" pattern="^com\.softmodeler\.*"/>
<locator searchPathRef="resources" pattern="^ch\.scodi\.*"/>
<locator searchPathRef="bundlepool" pattern="^com\.springsource\.*"/>
Here the messages I get for each bundle:
ERROR [0000] : No suitable provider for component com.springsource.ch.qos.logback.classic:osgi.bundle was found in resourceMap file:/C:/Programme/Hudson/workspace/jobs/scodi.client/worksp ace/scodi-rcp/features/ch.scodi.client.site/site.rmap
ERROR [0000] : No suitable provider for component com.springsource.ch.qos.logback.classic:osgi.bundle was found in searchPath bundlepool
ERROR [0000] : Resolution attempt ended with exception: Provider local(C:/Programme/Hudson/bundlepool/com.springsource.ch.qos .logback.classic): Missing CSpec source required by component type osgi.bundle
greets
flavio
Prozessmanagement und Qualitätsmanagement Software QMS/IMS
https://www.scodi.ch
|
|
|
Re: using jar packed bundles in rmap [message #521005 is a reply to message #520970] |
Tue, 16 March 2010 07:56 |
|
Hi Flavio,
The 'local' reader type assumes that the phase generally referred to as 'materialization' has taken place already and
that things are where they are supposed to be. In most cases, the 'local' reader is used by Buckminster internals only
but you can also use it when Buckminster can expect that a workspace has been checked out prior to the import.
Buckminster is then able to 'bind' things into the workspace. This however, assumes that the components found are projects.
In your case, I think you should use the 'url' reader type with the 'file:' protocol instead. That way, you give
Buckminster a chance to materialize the found material and copy it to your target platform (or import it into your
workspace). Example:
<provider readerType="url" componentTypes="osgi.bundle,buckminster" mutable="false" source="false">
<uri format="file:/C:/Programme/Hudson/bundlepool/{0}">
<bc:propertyRef key="buckminster.component" />
</uri>
</provider>
HTH,
- thomas
On 03/16/2010 02:02 AM, Flavio Donzé wrote:
> Hello
>
> Since I can not use a directory location as part of my target definition
> (should I add a feature request?):
> http://www.eclipse.org/forums/index.php?t=msg&th=163429& amp;start=0&
>
> I'm trying to add a local directory provider in my rmap. The directory
> contains a bunch of springsource bundles (normal OSGi bundles) which are
> packed as jars.
>
> It seems that buckminster is not able to read those bundles. Is this so?
> If yes why and is there a workaround? Or is just my configuration wrong....
>
> here part of my rmap file:
>
>
> <searchPath name="bundlepool">
> <provider readerType="local" componentTypes="osgi.bundle,buckminster"
> mutable="false" source="false">
> <uri format="C:/Programme/Hudson/bundlepool/{0}">
> <bc:propertyRef key="buckminster.component" />
> </uri>
> </provider>
> </searchPath>
>
> <locator searchPathRef="resources" pattern="^com\.softmodeler\.*"/>
> <locator searchPathRef="resources" pattern="^ch\.scodi\.*"/>
> <locator searchPathRef="bundlepool" pattern="^com\.springsource\.*"/>
>
>
>
> Here the messages I get for each bundle:
>
> ERROR [0000] : No suitable provider for component
> com.springsource.ch.qos.logback.classic:osgi.bundle was found in
> resourceMap file:/C:/Programme/Hudson/workspace/jobs/scodi.client/worksp
> ace/scodi-rcp/features/ch.scodi.client.site/site.rmap
>
> ERROR [0000] : No suitable provider for component
> com.springsource.ch.qos.logback.classic:osgi.bundle was found in
> searchPath bundlepool
>
> ERROR [0000] : Resolution attempt ended with exception: Provider
> local(C:/Programme/Hudson/bundlepool/com.springsource.ch.qos
> .logback.classic): Missing CSpec source required by component type
> osgi.bundle
>
> greets
> flavio
|
|
|
|
Re: using jar packed bundles in rmap [message #521150 is a reply to message #520970] |
Tue, 16 March 2010 15:08 |
Flavio Donze Messages: 211 Registered: July 2009 Location: Switzerland |
Senior Member |
|
|
Hey Thomas
I have found a workaround.
I created a new feature containing all the bundles form the external directory.
Used Eclipse "Export"=>"Deployable features".
Uploaded the export on the server and added this update site to the target definition.
Now the target definition handles those bundles.
A nice side effect, the whole team now shares the same bundle pool, no more copying the bundles around.
Thanks for your help!
greets
flavio
Prozessmanagement und Qualitätsmanagement Software QMS/IMS
https://www.scodi.ch
|
|
|
Powered by
FUDForum. Page generated in 0.03669 seconds