I just upgraded (see docker upgrade steps) my openhab to the latest snapshot available via docker and it runs more or less okay as far as I can see but it refuses to reload all my bindings which I had in my addons folder, when I touch them i get this error:
20:42:24.071 [ERROR] [org.apache.felix.fileinstall ] - Failed to install artifact: /openhab/addons/org.openhab.binding.dsmr-2.1.0-SNAPSHOT.jar
org.osgi.framework.BundleException: A bundle is already installed with the name "org.openhab.binding.dsmr" and version "2.1.0.201702282118" at location: file:/openhab/addons/org.openhab.binding.dsmr-2.1.0-SNAPSHOT.jar
at org.eclipse.osgi.storage.Storage.install(Storage.java:496)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.eclipse.osgi.internal.framework.BundleContextImpl.installBundle(BundleContextImpl.java:146)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.installOrUpdateBundle(DirectoryWatcher.java:1036)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.install(DirectoryWatcher.java:952)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.install(DirectoryWatcher.java:871)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:485)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:361)[4:org.apache.felix.fileinstall:3.5.6]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:312)[4:org.apache.felix.fileinstall:3.5.6]
When looking in the bundle:list they show in some in between state:
START LEVEL 100 , List Threshold: 50
ID | State | Lvl | Version | Name
-------------------------------------------------------------------------------------------------------
9 | Installed | 80 | 2.1.0.201705010628 | UniFi Binding
10 | Installed | 80 | 2.1.0.201706020845 | Rfxcom Binding
11 | Installed | 80 | 2.1.0.201706101937 | Samsung Tv Binding
12 | Installed | 80 | 2.1.0.201702282118 | DSMR Binding
13 | Installed | 80 | 0.9.0.201706042133 | Eclipse SmartHome Simple Math Transformation Service
I noticed this too, ESH seems to load .jars from the addons folder first whenever the cache is reset. I’ve just deleted the .jars I have there, did the upgrade and then dropped them back in once OpenHAB has initialized.
If I get time at a computer soon I’ll raise an issue on github
On any upgrade, the tmp and cache folders need to be cleaned. Then the runtime won’t have any info about the old versions anymore and the ones from the addons folder will be used.
Ok, then this exception does not make any sense to me
Could you try the following please: Change userdata/etc/org.apache.felix.fileinstall-deploy.cfg to have
I think it’s a combination of bad luck and that order, I have the problem again. I’ll change to 100 and try again.
edit: And with 100 it works
If I have more time anywhere this weekend I will try to repeat it like 5+ times, but I also have some visitors over this weekend so it might be hard to find the time…
I also have some bindings depending on the serial transport bundle, but I also have some other bindings installed via the normal path which require the serial transport bundle, so that is why it worked for me to change this
So it crashed/failed while installing from the addons folder because there was an error and in my case it was automatically resolved if we did it at the end because then the serial-transport was was present.
That is it, though it doesn’t seem to work anymore since I upgraded. No errors aside from the 404 that is returned by the icon path now.
edit: bah… the super important breaking change from i18nProvider to TranslationProvider strikes again.
Maybe, my errors persisted after installing the serial bundle until I removed and reinstalled the zwave .jar. Then the “Unresolved requirement: Import-Package: com.google.common.collect” error stopped.