Ege Installation "Failed to start"

Hi Zusammen,

ich versuche seit geraumer Zeit das OpenEMS Edge auf einem Raspberry b3+ zum laufen zu bekommen.

“get started (build Edge)” aus dem Leitfaden habe ich erfolgreich absolviert.
“Deplay” hier hänge ich. das Edge wird ausgefüht bricht aber wegen einer Fehlermeldung ab:

Blockquote

root@raspi…# systemctl restart openems --no-block; journalctl -lfu openems
– Journal begins at Thu 2022-09-22 02:23:40 CEST. –
Mar 23 11:38:46 raspi2 java[5431]: Caused by: java.lang.ClassNotFoundException: org.osgi.framework.ServiceListener
Mar 23 11:38:46 raspi2 java[5431]: at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
Mar 23 11:38:46 raspi2 java[5431]: at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
Mar 23 11:38:46 raspi2 java[5431]: at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
Mar 23 11:38:46 raspi2 java[5431]: … 14 more
Mar 23 11:38:46 raspi2 systemd[1]: openems.service: Main process exited, code=exited, status=1/FAILURE
Mar 23 11:38:46 raspi2 systemd[1]: openems.service: Failed with result ‘exit-code’.
Mar 23 11:38:46 raspi2 systemd[1]: Failed to start OpenEMS.
Mar 23 11:38:53 raspi2 systemd[1]: Stopped OpenEMS.
Mar 23 11:38:53 raspi2 systemd[1]: Starting OpenEMS…
Mar 23 11:38:54 raspi2 java[5442]: Exception in thread “main” java.lang.NoClassDefFoundError: org/osgi/framework/ServiceListener
Mar 23 11:38:54 raspi2 java[5442]: at java.lang.ClassLoader.defineClass1(Native Method)
Mar 23 11:38:54 raspi2 java[5442]: at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
Mar 23 11:38:54 raspi2 java[5442]: at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
Mar 23 11:38:54 raspi2 java[5442]: at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
Mar 23 11:38:54 raspi2 java[5442]: at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
Mar 23 11:38:54 raspi2 java[5442]: at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
Mar 23 11:38:54 raspi2 java[5442]: at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
Mar 23 11:38:54 raspi2 java[5442]: at java.security.AccessController.doPrivileged(Native Method)
Mar 23 11:38:54 raspi2 java[5442]: at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
Mar 23 11:38:54 raspi2 java[5442]: at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
Mar 23 11:38:54 raspi2 java[5442]: at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
Mar 23 11:38:54 raspi2 java[5442]: at aQute.launcher.pre.EmbeddedLauncher.executeWithRunPath(EmbeddedLauncher.java:161)
Mar 23 11:38:54 raspi2 java[5442]: at aQute.launcher.pre.EmbeddedLauncher.findAndExecute(EmbeddedLauncher.java:119)
Mar 23 11:38:54 raspi2 java[5442]: at aQute.launcher.pre.EmbeddedLauncher.main(EmbeddedLauncher.java:52)
Mar 23 11:38:54 raspi2 java[5442]: Caused by: java.lang.ClassNotFoundException: org.osgi.framework.ServiceListener
Mar 23 11:38:54 raspi2 java[5442]: at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
Mar 23 11:38:54 raspi2 java[5442]: at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
Mar 23 11:38:54 raspi2 java[5442]: at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
Mar 23 11:38:54 raspi2 java[5442]: … 14 more
Mar 23 11:38:54 raspi2 systemd[1]: openems.service: Main process exited, code=exited, status=1/FAILURE
Mar 23 11:38:54 raspi2 systemd[1]: openems.service: Failed with result ‘exit-code’.
Mar 23 11:38:54 raspi2 systemd[1]: Failed to start OpenEMS.

Blockquote

Ggf liegt mein Fehler schon in einem Punkt des Leitfaden

hier weiß ich bei dem Punkt 3. “Die Konfiguration kann vom Ordner kopiert werden, welcher in
io.openems.edge.application\EdgeApp.bndrun unter felix.cm.dir=c:/openems/config definiert ist.
Dieser wird in´s Verzeichnis /etc/openems.d kopiert” nicht weiter. ich habe also nichts kopiert da ich nicht weiß was. :frowning:

ich hoffe ihr könnt mir helfen.

Besten Dank!

ich habe nochmals ein neues jar file erstellt und auf den rspberry geschoben.
(einmal mit Java 8 (1.8) und einmal mit Java 11) versucht)

nun läuft der start länger aber es gibt ein time-out nach der letzten Zeile wie folgt:

systemctl restart openems --no-block; journalctl -lfu openems

– Journal begins at Thu 2022-09-22 02:23:40 CEST. –
Mar 23 12:12:47 raspi2 java[7082]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566) ~[?:?]
Mar 23 12:12:47 raspi2 java[7082]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297) ~[?:?]
Mar 23 12:12:47 raspi2 java[7082]: at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]
Mar 23 12:12:47 raspi2 java[7082]: 12:12:47.195 [FelixDispatchQueue] ERROR Events.Framework - FrameworkEvent ERROR
Mar 23 12:12:47 raspi2 java[7082]: org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole.plugins.ds [197](R 197.0): missing requirement [org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.webconsole [196](R 196.0): missing requirement [org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))]] Unresolved requirements: [[org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0)))]
Mar 23 12:12:47 raspi2 java[7082]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398) ~[?:?]
Mar 23 12:12:47 raspi2 java[7082]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308) ~[?:?]
Mar 23 12:12:47 raspi2 java[7082]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566) ~[?:?]
Mar 23 12:12:47 raspi2 java[7082]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297) ~[?:?]
Mar 23 12:12:47 raspi2 java[7082]: at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]
Mar 23 12:13:45 raspi2 systemd[1]: openems.service: Succeeded.
Mar 23 12:13:45 raspi2 systemd[1]: Stopped OpenEMS.
Mar 23 12:13:45 raspi2 systemd[1]: openems.service: Consumed 11.649s CPU time.
Mar 23 12:13:45 raspi2 systemd[1]: Starting OpenEMS…

Mar 23 12:13:53 raspi2 java[7122]: 12:13:53.454 [FelixDispatchQueue] ERROR Events.Framework - FrameworkEvent ERROR
Mar 23 12:13:53 raspi2 java[7122]: org.osgi.framework.BundleException: Unable to resolve io.openems.edge.timeofusetariff.tibber [161](R 161.0): missing requirement [io.openems.edge.timeofusetariff.tibber [161](R 161.0)] osgi.wiring.package; (&(osgi.wiring.package=io.openems.common.exceptions)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve io.openems.common [9](R 9.0): missing requirement [io.openems.common [9](R 9.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))] Unresolved requirements: [[io.openems.edge.timeofusetariff.tibber [161](R 161.0)] osgi.wiring.package; (&(osgi.wiring.package=io.openems.common.exceptions)(version>=1.0.0)(!(version>=2.0.0)))]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]
Mar 23 12:13:53 raspi2 java[7122]: 12:13:53.458 [FelixDispatchQueue] ERROR Events.Framework - FrameworkEvent ERROR
Mar 23 12:13:53 raspi2 java[7122]: org.osgi.framework.BundleException: Unable to resolve io.openems.shared.influxdb [162](R 162.0): missing requirement [io.openems.shared.influxdb [162](R 162.0)] osgi.wiring.package; (&(osgi.wiring.package=io.openems.common.timedata)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve io.openems.common [9](R 9.0): missing requirement [io.openems.common [9](R 9.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))] Unresolved requirements: [[io.openems.shared.influxdb [162](R 162.0)] osgi.wiring.package; (&(osgi.wiring.package=io.openems.common.timedata)(version>=1.0.0)(!(version>=2.0.0)))]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]
Mar 23 12:13:53 raspi2 java[7122]: 12:13:53.470 [FelixDispatchQueue] ERROR Events.Framework - FrameworkEvent ERROR
Mar 23 12:13:53 raspi2 java[7122]: org.osgi.framework.BundleException: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11)) Unresolved requirements: [[org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]
Mar 23 12:13:53 raspi2 java[7122]: ERROR: Bundle org.apache.felix.webconsole [196] Error starting jar/org.apache.felix.webconsole-4.7.2.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole [196](R 196.0): missing requirement [org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))] Unresolved requirements: [[org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0)))])
Mar 23 12:13:53 raspi2 java[7122]: org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole [196](R 196.0): missing requirement [org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))] Unresolved requirements: [[org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0)))]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398)
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566)
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297)
Mar 23 12:13:53 raspi2 java[7122]: at java.lang.Thread.run(Thread.java:748)
Mar 23 12:13:53 raspi2 java[7122]: 12:13:53.504 [FelixDispatchQueue] ERROR Events.Framework - FrameworkEvent ERROR
Mar 23 12:13:53 raspi2 java[7122]: org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole [196](R 196.0): missing requirement [org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))] Unresolved requirements: [[org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0)))]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]
Mar 23 12:13:53 raspi2 java[7122]: ERROR: Bundle org.apache.felix.webconsole.plugins.ds [197] Error starting jar/org.apache.felix.webconsole.plugins.ds-2.2.0.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole.plugins.ds [197](R 197.0): missing requirement [org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.webconsole [196](R 196.0): missing requirement [org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))]] Unresolved requirements: [[org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0)))])
Mar 23 12:13:53 raspi2 java[7122]: org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole.plugins.ds [197](R 197.0): missing requirement [org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.webconsole [196](R 196.0): missing requirement [org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))]] Unresolved requirements: [[org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0)))]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398)
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308)
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566)
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297)
Mar 23 12:13:53 raspi2 java[7122]: at java.lang.Thread.run(Thread.java:748)
Mar 23 12:13:53 raspi2 java[7122]: 12:13:53.521 [FelixDispatchQueue] ERROR Events.Framework - FrameworkEvent ERROR
Mar 23 12:13:53 raspi2 java[7122]: org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole.plugins.ds [197](R 197.0): missing requirement [org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.webconsole [196](R 196.0): missing requirement [org.apache.felix.webconsole [196](R 196.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.http)(version>=1.2.0)(!(version>=2.0.0))) [caused by: Unable to resolve org.apache.felix.http.jetty [191](R 191.0): missing requirement [org.apache.felix.http.jetty [191](R 191.0)] osgi.ee; (&(osgi.ee=JavaSE)(version=11))]] Unresolved requirements: [[org.apache.felix.webconsole.plugins.ds [197](R 197.0)] osgi.wiring.package; (&(osgi.wiring.package=org.apache.felix.webconsole.i18n)(version>=1.0.0)(!(version>=2.0.0)))]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4398) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.startBundle(Felix.java:2308) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1566) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:297) ~[?:?]
Mar 23 12:13:53 raspi2 java[7122]: at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_312]

dann time-out

Hey,

Schau Dir mal Edge + UI Deployment - ein grober Leitfaden an. Nicht vollständig - aber es sollte Dich weiterbringen.

Hallo Sn0w3y,

Danke für deine Hilfe, vielleicht kannst du mir bei einem Punkt weiter helfen.

Was genau soll hier gemacht werden?

Die Konfiguration kann vom Ordner kopiert werden, welcher in io.openems.edge.application\EdgeApp.bndrun unter felix.cm.dir=c:/openems/config definiert ist. Dieser wird in ́s Verzeichnis /etc/openems.d kopiert

Vg

Ich verstehe leider deine Fragestellung nicht. Läuft es denn in der Simulation bei dir ?

Moin,

Ich bin auch nicht ganz sicher was Du meinst, aber ich versuch´s mal:

In der EdgeApp.bndrun ist das Verzeichnis definiert in dem sich die Konfigurations-Dateien befinden, meistens c:/openems/config. Von dort aus werden die Dateien auf Dein Edge-Device (in meinem Fall ein Debian-System) z.B. mit WinSCP in´s Verzeichnis /etc/openems.d kopiert.
Alternativ kannst Du die Konfiguration über die Web-Konsole auf dem Ziel-Gerät ja auch neu erstellen.

Gruß
klinki

2 Likes

Moin,
ich bin alles nochmal durch - ich bin mir nicht sicher wo der fehler lag aber nun läuft es. nun scheiter ich nur noch an der Kommunikation mit meinem Kaco WR (Hybrid, wo ein Identkey benötigt wird). Schauen wir mal.

Vielen Dank für Eure Hilfe!

VG
Simme