Building binding from repo with Maven

Hi ! i try to build binding from this repo:

after run command mvn clean install
i got errors:

[INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for org.openhab.addons.bundles:org.openhab.binding.souliss:2.5.3-SNAPSHOT: Could not find artifact org.openhab.addons.bundles:org.openhab.addons.reactor.bundles:pom:2.5.3-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 11
 @
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR]   The project org.openhab.addons.bundles:org.openhab.binding.souliss:2.5.3-SNAPSHOT (D:\!!!!DIY_PROJECTS!!!!!\JAVA\bindingopenhab2\org.openhab.binding.souliss\pom.xml) has 1 error
[ERROR]     Non-resolvable parent POM for org.openhab.addons.bundles:org.openhab.binding.souliss:2.5.3-SNAPSHOT: Could not find artifact org.openhab.addons.bundles:org.openhab.addons.reactor.bundles:pom:2.5.3-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 11 -> [Help 2]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException

The POM from binding is:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.openhab.addons.bundles</groupId>
    <artifactId>org.openhab.addons.reactor.bundles</artifactId>
    <version>2.5.3-SNAPSHOT</version>
  </parent>

  <artifactId>org.openhab.binding.souliss</artifactId>

  <name>openHAB Add-ons :: Bundles :: Souliss Binding</name>

</project>

Please help resolve this problem. I have erros from this binding unfortunatelly the author stoped develop it.

Needs to be the latest snapshot version: 2.5.10-SNAPSHOT

1 Like

i chnaged version in POM:

  <parent>
<groupId>org.openhab.addons.bundles</groupId>
<artifactId>org.openhab.addons.reactor.bundles</artifactId>
<version>2.5.10-SNAPSHOT</version>
but the errors is the same

    [INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for org.openhab.addons.bundles:org.openhab.binding.souliss:2.5.10-SNAPSHOT: Could not find artifact org.openhab.addons.bundles:org.openhab.addons.reactor.bundles:pom:2.5.10-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 11
 @
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR]   The project org.openhab.addons.bundles:org.openhab.binding.souliss:2.5.10-SNAPSHOT (D:\JAVA\bindingopenhab2\org.openhab.binding.souliss\pom.xml) has 1 error
[ERROR]     Non-resolvable parent POM for org.openhab.addons.bundles:org.openhab.binding.souliss:2.5.10-SNAPSHOT: Could not find artifact org.openhab.addons.bundles:org.openhab.addons.reactor.bundles:pom:2.5.10-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 11 -> [Help 2]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.

The binding in the repo only contains a part of what is in the openhab-addons repo. So it tries to download the parent pom instead of getting it from the parent pom. However the pom doesn’t have any information where to get that pom as it’s not availlable in any of the standard maven repositories. As a workaround you can checkout the openhab-addons repo and run maven install on any binding. I think that should download the specific pom and then it should work.

1 Like

I clone repo openhab-addons and try to build one of bundles (org.openhab.binding.wemo) for example, and downloading from maven global repo to local repo

[INFO] Scanning for projects…
[WARNING] Error injecting: org.openhab.tools.analysis.report.SummaryReportLifecycleParticipant
java.lang.TypeNotPresentException: Type org.openhab.tools.analysis.report.SummaryReportLifecycleParticipant not present
at org.eclipse.sisu.space.URLClassSpace.loadClass (URLClassSpace.java:147)
at org.eclipse.sisu.space.NamedClass.load (NamedClass.java:46)
at org.eclipse.sisu.space.AbstractDeferredClass.get (AbstractDeferredClass.java:48)

I got another errors but it not related to POM. The maven download classes in local repository ( i put it to D:\JAVA.m2\repository)
and i suppoused that maven must take POM from this path when i try to build my binding org.openhab.binding.souliss

Please share the coolest org.openhab.binding.souliss

Sorry I keep forgetting I have to be very specific. The main is openhab 3.0 and requires Java 11. If you want to check for 2.5.10-SNAPSHOT you should checkout the branch 2.5.x, that still works with Java 8. Just for completeness if you want submit the binding to the main repo it needs to be a 3.0 version.

1 Like

OK. I checkout to 2.5.x branch and test binding builded ok. But when i put my binding souliss folder to other original OH bindings and try to build it i got another errors:

PS D:\JAVA\openhab-addons\bundles\org.openhab.binding.souliss> mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] -------< org.openhab.addons.bundles:org.openhab.binding.souliss >-------
[INFO] Building openHAB Add-ons :: Bundles :: Souliss Binding 2.5.10-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.0.0:clean (default-clean) @ org.openhab.binding.souliss ---
[INFO]
[INFO] --- maven-enforcer-plugin:3.0.0-M2:enforce (enforce-java) @ org.openhab.binding.souliss ---
[INFO]
[INFO] --- directory-maven-plugin:0.3.1:directory-of (directories) @ org.openhab.binding.souliss ---
[INFO] Directory of org.openhab.addons:org.openhab.addons.reactor set to: D:\JAVA\openhab-addons
[INFO]
[INFO] --- spotless-maven-plugin:2.0.3:check (codestyle_check) @ org.openhab.binding.souliss ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  7.090 s
[INFO] Finished at: 2020-10-16T14:36:57+03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.diffplug.spotless:spotless-maven-plugin:2.0.3:check (codestyle_check) on project org.openhab.binding.souliss: The following files had format violations:
[ERROR]     src\main\resources\ESH-INF\binding\binding.xml
[ERROR]         @@ -5,6 +5,6 @@
[ERROR]
[ERROR]          \t<name>Souliss·Binding</name>
[ERROR]          \t<description>This·is·the·binding·for·Souliss.·The·Arduino·based·SmartHome..</description>
[ERROR]         -····<author>Tonino·Fazio·-·Luca·Remigio·-·Luca·Calcaterra</author>
[ERROR]         +\t<author>Tonino·Fazio·-·Luca·Remigio·-·Luca·Calcaterra</author>
[ERROR]
[ERROR]          </binding:binding>
[ERROR]     src\main\resources\ESH-INF\thing\thing-types.xml
[ERROR]         @@ -1,8 +1,8 @@
[ERROR]          <?xml·version="1.0"·encoding="UTF-8"?>
[ERROR]          <thing:thing-descriptions·bindingId="souliss"
[ERROR]         -····xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
[ERROR]         -····xmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0"
[ERROR]         -····xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0·https://openhab.org/schemas/thing-description-1.0.0.xsd">
[ERROR]         +\txmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
[ERROR]         +\txmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0"
[ERROR]         +\txsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0·https://openhab.org/schemas/thing-description-1.0.0.xsd">
[ERROR]
[ERROR]
[ERROR]          \t<bridge-type·id="gateway">
[ERROR]         @@ -13,22 +13,22 @@
[ERROR]          \t\t\t<parameter·name="GATEWAY_IP_ADDRESS"·type="text"·required="true">
[ERROR]          \t\t\t\t<label>IP·or·Host·Name</label>
[ERROR]          \t\t\t\t<description>Will·be·resolved·by·discovery·if·auto·configured
[ERROR]         -················</description>
[ERROR]         +\t\t\t\t</description>
[ERROR]          \t\t\t</parameter>
[ERROR]          \t\t\t<parameter·name="GATEWAY_PORT_NUMBER"·type="integer"·required="true">
[ERROR]          \t\t\t\t<label>Gateway·port</label>
[ERROR]          \t\t\t\t<description>Default·is·230·UDP.
[ERROR]         -················</description>
[ERROR]         +\t\t\t\t</description>
[ERROR]          \t\t\t\t<default>230</default>
[ERROR]          \t\t\t</parameter>
[ERROR]          \t\t\t<parameter·name="PREFERRED_LOCAL_PORT_NUMBER"·type="integer"·required="true">
[ERROR]          \t\t\t\t<label>Preferred·local·port·number</label>
[ERROR]          \t\t\t\t<description>Default·port·is·0.·It·means·that·it·is·random.
[ERROR]         -················</description>
[ERROR]         +\t\t\t\t</description>
[ERROR]          \t\t\t\t<default>0</default>
[ERROR]          \t\t\t\t<advanced>true</advanced>
[ERROR]          \t\t\t</parameter>
[ERROR]         -\t\t\t
[ERROR]         +
[ERROR]          \t\t\t<parameter·name="PING_INTERVAL"·type="integer"·min="1"·max="300">
[ERROR]          \t\t\t\t<label>Ping·interval</label>
[ERROR]          \t\t\t\t<description>Interval·in·seconds·to·check·for·device·presence.</description>
[ERROR]         @@ -38,51 +38,52 @@
[ERROR]     ... (1586 more lines that didn't fit)
[ERROR] Run 'mvn spotless:apply' to fix these violations.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
PS D:\JAVA\openhab-addons\bundles\org.openhab.binding.souliss>

The answer is in the log.

1 Like

Thank you!
mvn spotless:apply - resolve problem
[INFO] BUILD SUCCESS
But mvn clean install does not work but at this time this does’t matter.