Installing Extensions fails with "org.osgi.service.resolver .ResolutionException"

When I try to install (or uninstall) an extension via the Paper UI I get the following error in the log:
2016-07-10 20:47:27.174 [ERROR] [st.core.extensions.ExtensionResource] - Exception while installing extension: org.osgi.service.resolver
.ResolutionException: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=openhab-binding-yahooweather; type
=karaf.feature; version="[0.8.0.SNAPSHOT,0.8.0.SNAPSHOT]"; filter:="(&(osgi.identity=openhab-binding-yahooweather)(type=karaf.feature)(v
ersion>=0.8.0.SNAPSHOT)(version<=0.8.0.SNAPSHOT))"

At this point I cant install or unsinstall any new bindings. Any Idea ?
I am on the latest Snapshot btw.

Take care
Ingo

Are you sure that this is the latest snapshot? I have just tested build #401 and it all works nicely. It should definitely refer to version 0.9.0 and not to 0.8.0, so your build seems to be old.

I am fairly sure that I am using the latest snapshot. I use the apt repository to update and I just did so today. Strange thing is that the Yahoo Weather binding on the extension page says 0.9.0 Snapshot but I cant install it (or any other) due to that exception.
Is it possible that I have an old version of the weather binding installed that causes that issue ?
Can I somehow check to make sure that I am really on the latest snapshot ?
Thanks
Ingo

I am not using apt, but if I read this correctly, you will get only a beta release installed through apt - if you want to use the latest snapshot, you have to download the deb file yourself. But the error you mention clearly means that I should soon release a new beta, which will solve that problem.

Well in that document it states two repos where as I understand it you can get the latest snapshot (either online or offline) I am using the online version of the repo. As I understand these repos are updates with every build.

here is the passage from the above document that leads me to believe that it is the latest snapshot:


You can test the current snapshot of the offline distribution by adding this line to your apt-sources:

deb https://openhab.ci.cloudbees.com/job/openHAB-Distribution/ws/distributions/openhab-offline/target/apt-repo/ /

or the online distribution by adding that line:

deb https://openhab.ci.cloudbees.com/job/openHAB-Distribution/ws/distributions/openhab-online/target/apt-repo/ /


Maybe something is wrong with the build of the apt repo.

Take care
Ingo

Ok, right, I didn’t see this passage.

@theo Any clue, what might be the issue here?

I am getting the same error. Using the offline repo and getting it from: https://openhab.ci.cloudbees.com/job/openHAB-Distribution/ws/distributions/openhab-offline/target/apt-repo/

I have found a solution for this although its probably not the best one. First I saved my configuration from /etc/openhab2 then I removed openhab2 completely with apt-get remove, cleaned all remnants, especially the database in /var/lib/openhab2 and then reinstalled again with apt-get install.
Then I reinstalled all extensions that I need and placed my configure back and everything is fine now.
As said not the best solution, my assumption is that something got stuck in the mapdb from previous snapshots that caused this.
Take care
Ingo

The version of the SNAPSHOT packages is always 2.0.0~SNAPSHOT. I think “apt-get upgrade” only compares the version strings to determine if an upgrade is required. Therefore I would suggest to upgrade SNAPSHOTS installations using the following command:
apt-get --reinstall install openhab2-offline

I think the reinstall behaves like an upgrade if the package is already installed, therefore you don’t have to backup and restore your configuration. Maybe someone can check this.

Hi all, I have had the same (or comparable) problem. In my case, I see the following error in the openhab2.log:

Exception while installing extension: org.osgi.service.resolver.ResolutionException: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=openhab-binding-hue; type=karaf.feature; version="[0.8.0.SNAPSHOT,0.8.0.SNAPSHOT]"; filter:="(&(osgi.identity=openhab-binding-hue)(type=karaf.feature)(version>=0.8.0.SNAPSHOT)(version<=0.8.0.SNAPSHOT))"

I have done an upgrade of the openhab2-offline (with a --reinstall, and fresh download) and also un-installed this 0.0.8 binding via the karaf client (bundle:uninstall). At this point, I am not able to install the new Hue binding, nor any other binding (they all seem to be at a 0.0.9 version, e.g.

cat ./openhab/distro/openhab-aggregate-kar/2.0.0-SNAPSHOT/openhab-aggregate-kar-2.0.0-SNAPSHOT-features.xml | grep -i hue

    <feature name="esh-binding-hue" version="0.9.0.SNAPSHOT">
        <bundle>mvn:org.eclipse.smarthome.binding/org.eclipse.smarthome.binding.hue/0.9.0-SNAPSHOT</bundle>
    <feature name="openhab-binding-hue" description="Hue Binding" version="0.9.0.SNAPSHOT">
        <feature prerequisite="false" dependency="false">esh-binding-hue</feature>
    <feature name="openhab-misc-hueemulation" description="Hue Emulation" version="2.0.0.SNAPSHOT">
        <bundle start-level="80">mvn:org.openhab.io/org.openhab.io.hueemulation/2.0.0-SNAPSHOT</bundle>
        <feature prerequisite="false" dependency="false">openhab-binding-hue</feature>

Any suggestions as to how to fix this (apart from a complete reinstall which I really would not like to do …). I also tried (as a temporary workaround) to copy the 0.0.9 hue binding jar to the /usr/share/openhab2/addons/ folder, but this is not really working either.

Thanks,
Joost

Hello @theo,
being able to upgrade without --reinstall seems quite important. Can anything be done to solve that problem?
I’m currently in the process of updating the docs on installation and this part is a bit unsatisfying…

Hi @ThomDietrich,

I just opened a PR to solve this issue: https://github.com/openhab/openhab-distro/pull/267

Regards,
Theo

1 Like

The PR is merged and now SNAPSHOTS a versioned using the current timestamp. --reinstall option should not be necessary anymore.

1 Like

So what should I do to make it work again? Im having the same problem as mentioned above. Can I do a apt-get upgrade? update?