openhab-docker: Using the latest openhab 2.0.0 armhf on a PI with zwave enabled fails to connect to the Zwave stick

It would seem that the serial driver for the USB stick is compiled for the wrong platform, the following appears in the docker logs

java.lang.UnsatisfiedLinkError: /openhab/userdata/tmp/libNRJavaSerial_openhab_0/libNRJavaSerial.so: /openhab/userdata/tmp/libNRJavaSerial_openhab_0/libNRJavaSerial.so: cannot open shared object file: No such file or directory (Possible cause: can't load IA 32-bit .so on a ARM-bit platform)
	at java.lang.ClassLoader$NativeLibrary.load(Native Method)
	at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824)
	at java.lang.Runtime.load0(Runtime.java:809)
	at java.lang.System.load(System.java:1086)
	at gnu.io.NativeResource.loadResource(NativeResource.java:142)
	at gnu.io.NativeResource.inJarLoad(NativeResource.java:40)
	at gnu.io.NativeResource.loadLib(NativeResource.java:60)
	at gnu.io.NativeResource.load(NativeResource.java:28)
	at gnu.io.SerialManager.<init>(SerialManager.java:10)
	at gnu.io.SerialManager.getInstance(SerialManager.java:16)
	at gnu.io.RXTXCommDriver.<clinit>(RXTXCommDriver.java:87)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:264)
	at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:109)
	at org.openhab.binding.zwave.handler.ZWaveSerialHandler.initialize(ZWaveSerialHandler.java:81)
	at org.eclipse.smarthome.core.thing.internal.ThingManager$9$1.call(ThingManager.java:713)
	at org.eclipse.smarthome.core.thing.internal.ThingManager$9$1.call(ThingManager.java:1)
	at org.eclipse.smarthome.core.common.SafeMethodCaller$CallableWrapper.call(SafeMethodCaller.java:179)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 24 (8 by maintainers)

Most upvoted comments

I can also confirm this issue. I get the same error on my Pi when I try to pass /dev/ttyACM0 to the container. As workaround I installed Oracle Java8. With the Oracle JVM the Z-Wave stick works as expected. You can check my Dockerfile here https://github.com/boomalien/rpi-openhab-oracle-java8/blob/master/Dockerfile or pull the image from https://hub.docker.com/r/boomalien/rpi-openhab-oracle-java8/