JAVA Error: libjli.so - Cannot open shared object file

  • Platform information:
    • Hardware: Raspberry Pi 4 Model B Rev 1.1
    • OS: Raspbian GNU/Linux 10 (buster)
    • openHAB version: 2.5.4-1

Since this afternoon I get the folowing error-message:
java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory

I thought that I did something wrong so I have made a clean install of openHAB on my Raspberry Pi (folowing this procedure: https://www.openhab.org/docs/installation/openhabian.html). But after the fresh installation I still get the same message.

I’m running openHAB for over a half year but never got this message before
Can somebody tell me how to solve this issue?

Kind regards,
Tim

1 Like

I just attempted a clean install and have the same issue.

Digging into to /var/log/syslog, I see errors like so:

Basically, the java installation is broken

still trying to figure out how to work around this.

Update:
Running it under strace, I can see it find the libjli.so library file but ignoring the it for some reason. I am pretty sure that the libjli.so file isn’t being built correctly.

openat(AT_FDCWD, “/opt/jdk/zulu8.46.0.225-ca-jdk8.0.252->linux_aarch32sf/bin/…/lib/aarch32/jli/libjli.so”, O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
read(3, “\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\354\30\0\0004\0\0\0”…, 512) = 512
close(3) = 0
openat(AT_FDCWD, “/opt/jdk/zulu8.46.0.225-ca-jdk8.0.252-linux_aarch32sf/bin/…/lib/aarch32/libjli.so”, O_RDONLY|O_LARGEFILE|O_CLOEXEC) = -1 ENOENT (No such file or directory)

@mstormi: I’ve seen you’re reaction on a similar topic on github (https://github.com/openhab/openhabian/issues/874). This is the same issue but I don’t have an account there so I hope to reach you with this post.

I’ve executed the command which java with folowing result: /usr/bin/java.

updated java first as instructed.

Same result here

/usr/bin/java

I also got this Java issue after updating today to 2.5.4-1 thru openhabian-config.
OH not working. Please help

I did a fresh install of openhabian this morning and ran into this- I thought I was going crazy because I could ssh and ping but no amount of googling would give me the answer until I lightbulbed and searched here. Finger crossed- I’m new to this and decided to try it out on a whim.
"
$ java -version
java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory

Azul (the Java package provider) have changed their API once again. I’m loving it.

All to have this problem, please restart openhabian-config, let it update, and select 02 - Upgrade again.

Let me know if that helps.

Same issue here since yesterday… first time I try on a RPI4. Spent a good part of the day trying to figure out reading old posts…

I’m trying a clean install then I’ll do 02- Upgrade right now. Let you know.

Seems to have sorta fixed me, i can log into console now. However Paper isn’t loading only log/grafana/openhabian-help. I’m also getting a repetitive error from java in logs

org.quartz.SchedulerException: Job threw an unhandled exception.

	at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [bundleFile:?]

	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [bundleFile:?]

Caused by: java.lang.reflect.UndeclaredThrowableException

	at com.sun.proxy.$Proxy128.apply(Unknown Source) ~[?:?]

	at org.eclipse.smarthome.model.script.internal.actions.TimerExecutionJob.execute(TimerExecutionJob.java:48) ~[?:?]

	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]

	... 1 more

Caused by: org.eclipse.smarthome.model.script.engine.ScriptExecutionException: The name 'Astro_Sunset_End' cannot be resolved to an item or type; line 159, column 26, length 16

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:141) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:991) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:954) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:235) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:857) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:231) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:511) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter._doEvaluate(ScriptInterpreter.java:243) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:245) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:857) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:231) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:857) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:231) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:857) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:231) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluateArgumentExpressions(XbaseInterpreter.java:1205) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1135) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:1081) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:151) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:861) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:231) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:961) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:237) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:469) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:255) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:458) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:239) ~[?:?]

	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:215) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:201) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.ClosureInvocationHandler.doInvoke(ClosureInvocationHandler.java:46) ~[?:?]

	at org.eclipse.xtext.xbase.interpreter.impl.AbstractClosureInvocationHandler.invoke(AbstractClosureInvocationHandler.java:29) ~[?:?]

	at com.sun.proxy.$Proxy128.apply(Unknown Source) ~[?:?]

	at org.eclipse.smarthome.model.script.internal.actions.TimerExecutionJob.execute(TimerExecutionJob.java:48) ~[?:?]

	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]

	... 1 more```

Is it supposed to work on a clean install too?

I flashed the memory card, let the setup complete, then lost the log in my browser. Logged via SSH, did the 02-update. Zulu seems OK, but failed to start service.

After reboot, setup starting from beginning. Will see if the service starts after that…

EDIT : After reboot, the setup is complete, and after 24h hours, I finally access the dashboard!

Thank you very much …just a bad timing I tryied on this day!

yeah i have the dashboad now as well, however if i go to my things it will start randomly dropping bridges…and then the influx of errors will start rolling non-stop in the logs.

changed config file to expert, rebooted and so far so good. I think I know why all bridges went offline, my house is to dependent on openhab…i’ll have to do that test tomorrow day lol.

Thanks, this has solved my issue.

Now reinstalling al the other features of openHAB after I’ve unnecessarily did a clean install of openHAB.

Thank you Markus, your hotfix solved it

Yes that finally fixed it. :ok_hand:

Yesterday when it occured this steps didn’t help as I did them several times. Finally i fixed it yesterday evening by using an older version of the openjdk version by editing the java-jre.bash file and hardcoding the url to the older version of openjdk.

But this is of course the perfect solution.
Thanks a lot for fixing that fast. :+1:

I was able to reproduce the bridge error, if i go into services / addon’s and unhash the UI’s listed individually it takes all of my bridges offline (zwave for example). If I put the has back, it starts to rebuild but never fully does. Starts to get a java error.

That now has nothing to do with the libjli error. Please open a separate thread if you want help on that.