[SOLVED] Dependencies: Resolution failed

After solving my initial problem ([SOLVED] "Plugin execution not covered by lifecycle configuration" errors after clean Eclipse install , thanks guys!), I have encountered another show stopper. I am trying to use the package org.msgpack.core for developing a binding, and I am having some difficulty adding a dependency. I added

  <dependency>
    <groupId>org.msgpack</groupId>
    <artifactId>msgpack-core</artifactId>
    <version>0.8.8</version>
    <scope>provided</scope>
  </dependency>

into my binding’s pom.xml, as well as

<bundle dependency="true">mvn:org.msgpack/msgpack-core/0.8.8</bundle>

into my feature.xml. Everything builds fine in the console (mvn clean install -pl :org.openhab.binding.michaelstest -DskipChecks -DskipTests), and Project->Clean succeeds in Eclipse. However, hitting “resolve” in app.bndrun, I get

Resolution failed. Capabilities satisfying the following requirements could not be found:
    [<<INITIAL>>]
      ⇒ osgi.identity: (osgi.identity=org.openhab.binding.michaelstest)
          ⇒ [org.openhab.binding.michaelstest version=2.5.0.201909301824]
              ⇒ osgi.wiring.package: (&(osgi.wiring.package=org.msgpack.core))

I assume I must be doing something very basic wrong, but after hours of googling I am no closer to a solution than I was before. Any pointers?

By the way, while building from the console works with msgpack version 0.8.8, it errors out with version 0.8.18:
Unable to create resource for bundle mvn:org.msgpack/msgpack-core/0.8.18
Suspicious…

Change to scope compile (and probably rebase on master). The documentation needs to be updated. It‘s already on my hard disk but not pushed to github.

1 Like

That was it, thanks! I spent way too much time on that

Should now all dependencies changed to the scope compile? It looks like it also solves my issue with pinning dependencies

Yes. But dependencies that are used in several bindings should be excluded from embedding (using the property <dep.noembedding>artifactId</dep.noembedding>.