Hi all. Recently I am trying to use a 3rd party jar A to develop my binding. The problem is on the package commons.io. First I didn’t add A as a dependency and generate my binding. The MANIFEST is good. Also I can test it using bndtools. I found that during the build, openHAB will download 4 versions of commons.io.
That is, version 2.4, 2.6 and 1.4. Then it can be tested using bndrun smoothly. Then, I add my 3rd party jar as dependencies like the following:
One thing to note that is in the pom file of this jar dependency, it also uses commons-io as dependencies.
I think the version is exactly one that openHAB has downloaded. But when I executed
mvn clean install
I found in the generate bundle’s MANIFEST.MF. One line has been added, which never shows before.
Import-Package:org.apache.commons.io;version=“[1.4, 2)”
Also there are many other imported packages and I only show this. Because it causes the following bnd resolution error.
How would that happen? Why does the version constriant of commons.io become [1.4, 2)? And how to solve it?