I’ve been working on a Eufy Security (cameras, doorbell etc) binding. Was doing fine, but at some point I started receiving this error when starting the app.bndrun:
Unresolved requirement: Import-Package: org.openhab.core.automation.internal.commands
I do not know where it came from and cannot find how to resolve it. I do not have a reference for it somewhere in my config files as far as I can find. I’ve already tried re-downloading eclipse+openhab+source from scratch (updating from 3.1.0 to 3.3.0 in the process), but the error remains. org.openhab.core.automation is in the run requirements and my binding in the run bundles part of the bndrun configuration. I can run/debug other bindings in
addons/bundles/ if I add them to the run bundles.
Does anyone have a hint how to resolve this?
The missing requirement means you:
- Refer package which is not found in runtime.
- Try to import an restricted package.
First case is easy to solve - install missing archive, second requires additional comment. There are four levels of visibility in Java - public, protected, package-private and private. For packages you actually have only one - all packages are visible, at least that was the case prior Java 9.
To the point - you referenced a package which is “internal” thus it is not exported by automation command module and can’t be used by other modules. This package is supposed implementation specific or internal to implementing bundle. You need to find another way to refer logic which you try to get, or ask for opening it via specific issue.
thanks for the reply. was thinking too complicated and looking into osgi bundle configuation files, but turns out I used a classname that was very similar to one in the automation commands, and let eclipse ctrl+space-enter import the wrong one…