[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[buckminster-dev] question about multiple versions of bundles
|
Hi Buckminster dev community,
We/ECF [1] are/have been happily using Buckminster for years now...thank
you all kindly for that BTW...it's much appreciated.
ECF has recently added some support for using Java8's CompletableFuture
with our 'asynchronous remote service proxy' feature [2]. Here's a
description of the usefulness of the feature [3], and here's the
bug/enhancement for it [4].
We are trying to now use buckminster to build two versions (1.0.0) and
(2.0.0) of a new bundle...with bundle symbolic id:
org.eclipse.ecf.remoteservice.asyncproxy. The 1.0.0 version does not
have Java8 dependencies...and so should be built with something < j8,
the 2.0.0 does have J8 dependencies and so should use java8
compiler+class libs.
We previously were/are using buckminster...with all the necessary
cquery/mspec, etc...to build the 1.0.0 version with java6
compiler...everything fine when this is what's in the feature:
<plugin
id="org.eclipse.ecf.remoteservice.asyncproxy"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
Now...we've added both of the 1.0.0 and 2.0.0 bundles to the relevant
feature...and it looks like this:
<plugin
id="org.eclipse.ecf.remoteservice.asyncproxy"
download-size="0"
install-size="0"
version="1.0.0.qualifier"
unpack="false"/>
<plugin
id="org.eclipse.ecf.remoteservice.asyncproxy"
download-size="0"
install-size="0"
version="2.0.0.qualifier"
unpack="false"/>
We've also installed (via installJRE buckminster command) the java8 JRE
for the build.
However, when we try to build the feature with latest version of
buckminster (recently updated), with both the 1.0.0 and 2.0.0 versions
of the bundle in the feature we get this error:
org.eclipse.ecf.remoteservice.asyncproxy:osgi.bundle/[2.0.0,2.0.1):
Rejecting provider
p2({0}?importType=binary[http://download.ecf-project.org/repo/?importType=binary]):
No component match was found
org.eclipse.ecf.remoteservice.asyncproxy:osgi.bundle/[2.0.0,2.0.1): No
provider was found that could resolve the request
ERROR [0029] : No suitable provider for component
org.eclipse.ecf.remoteservice.asyncproxy:osgi.bundle/[2.0.0,2.0.1) was
found in resourceMap
file:/opt/hudson/jobs/C-HEAD-sdk.feature/workspace/ecf.rmap
ERROR [0029] : No suitable provider for component
org.eclipse.ecf.remoteservice.asyncproxy:osgi.bundle/[2.0.0,2.0.1) was
found in searchPath org.eclipse.ecf
ERROR [0029] : Version 1.0.0.qualifier rejected: Not designated
by [2.0.0,2.0.1)
ERROR [0029] : Rejecting provider
p2({0}?importType=binary[http://download.ecf-project.org/repo/?importType=binary]):
No component match was found
INFO: TAG-ID 0029 = Query for org.eclipse.ecf.sdk:eclipse.feature,
path: org.eclipse.ecf.sdk:eclipse.feature$3.8.1.qualifier ->
org.eclipse.ecf.remoteservice.sdk.feature:eclipse.feature$3.8.1.qualifier ->
org.eclipse.ecf.remoteservice.feature:eclipse.feature$2.1.0.qualifier
It looks (to me) as though the project that contains the 2.0.0 version
of this bundle is not being found...but it...like the 1.0.0 version is
in the mspec/rmap...because the 1.0.0 version of the bundle is found
just fine.
The projects that contain the 1.0.0 and 2.0.0 version respectively are
in the same directory and have these as project names:
org.eclipse.ecf.remoteservice.asyncproxy (1.0.0)
org.eclipse.ecf.remoteservice.asyncproxy.j8 (2.0.0)
I was thinking that perhaps we needed to add something special to the
buckminster metadata to be able to have the 2.0.0 version be found with
this project name...but I don't know what it is (if anything is needed).
What would be the best way to handle this. Thanksinadvance for any advice.
Scott
[1] http://www.eclipse.org/ecf
[2] http://wiki.eclipse.org/ECF/Asynchronous_Remote_Services
[3] http://eclipseecf.blogspot.com/
[4] https://bugs.eclipse.org/bugs/show_bug.cgi?id=431756