First: Hillbrand, please let me thank you for continuing to answer. You’ve answered several of my questions and given me things to look at and at least try. It hasn’t gotten me unstuck, but you are listening and helping and I appreciate that a lot, even as I’m frustrated by being unable to move ahead.
More technical information about my current issue:
I started having a dependency error. I thought I could fix this by installing Eclipse to a new folder, then copying in my current org.openhab.binding.insteonplm folder, adding it to bundles/pom.xml, and then using maven to rebuild the BOM, and using Maven or Eclipse to rebuild the project.
Problem: Parts of my project weren’t being updated, no matter what I did. Code was, but the sources won’t load in the debugger. I was debugging with log messages which is doable, but nowhere near as effective as the debugger. Changes to the XML files, such as Thing properties, never updated.
Also, mvn said that org.openhab.binding.insteonplm wasn’t in the reactor if I tried to build just it with -pl. If I looked at the full output, Insteon PLM was never listed as a project.
Apparently, just putting the files in place and updating bundles/pom.xml and rebuilding the BOM isn’t enough to add it to Maven as a project, but I don’t know what is.
I installed a new, clean Eclipse, and then used the create skeleton script to create a skeleton insteonplm binding. Rebuild the BOM, and rebuilt all. It built clean, and the Maven output showed InsteonPLM in the list. -pl allowed me to select just org.openhab.binding.insteonplm. Apparently the skeleton script knows to do something I don’t.
I then put my code back in place, and ran: mvn -DskipChecks -DskipTests -B -pl org.openhab.binding.insteonplm clean install
(The -B means “batch mode” and shuts off colorization of the log output so it can be captured and copy/pasted more clearly.)
It gave the dependency error.
Building the project in Eclipse, or trying to start the debugger via app.bndtools gives the same dependency error.
The error is:
[ERROR] Failed to execute goal org.apache.karaf.tooling:karaf-maven-plugin:4.2.6:verify (karaf-feature-verification) on project org.openhab.binding.insteonplm: Feature resolution failed for [openhab-binding-insteonplm/2.5.0.SNAPSHOT]
[ERROR] Message: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=openhab-binding-insteonplm; type=karaf.feature; version=2.5.0.SNAPSHOT; filter:="(&(osgi.identity=openhab-binding-insteonplm)(type=karaf.feature)(version>=2.5.0.SNAPSHOT))" [caused by: Unable to resolve openhab-binding-insteonplm/2.5.0.SNAPSHOT: missing requirement [openhab-binding-insteonplm/2.5.0.SNAPSHOT] osgi.identity; osgi.identity=org.openhab.binding.insteonplm; type=osgi.bundle; version="[2.5.0.201908240709,2.5.0.201908240709]"; resolution:=mandatory [caused by: Unable to resolve org.openhab.binding.insteonplm/2.5.0.201908240709: missing requirement [org.openhab.binding.insteonplm/2.5.0.201908240709] osgi.wiring.package; filter:="(osgi.wiring.package=org.openhab.core.binding)"]]
I’m not entirely sure what the error is trying to say I’m missing, but I’ve been unable to get past this error when it happens. It apparently happens more than I thought it did, because my fix for it was incomplete.
I think the problem is the last one, a missing requirement for org.openhab.core.binding
, but I’m not 100% sure. And I have no idea where to get it or why it’s missing.