MaryTTS gives Jama/Matrix errors for only some rules

  • Platform information:
    • Hardware: VMware virtual machine on HP DL380 gen 9
    • OS: Ubuntu 18.04 LTS
    • Java Runtime Environment: oracle Java™ SE Runtime Environment (build 1.8.0_181-b13)
    • openHAB version: 2.5 installed by apt package
  • Issue of the topic: Since openHAB 2.3 this issue has been occurring: some rules that have TTS commands will fail for java.lang.NoClassDefFoundError: Jama/Matrix

Original install was 2.0 on clean os install, then upgraded to 2.3 and recently to 2.5 hoping it would fix the issue introduced in 2.3.

I can consistenly duplicate the behavior in the console:
this works:

smarthome:voice say “washer is done dryer is done.”

this does not:

smarthome:voice say “washer is done. dryer is done.”
Error executing command: java.lang.NoClassDefFoundError: Jama/Matrix

I have cleared the cache and tmp folders. no change.

Where should I be looking to get the voice notifications working like the did in 2.0?

1 Like

Try using the latest snapshot jar file.
https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/addons/bundles/org.openhab.voice.marytts/2.5.4-SNAPSHOT/

Uninstall MaryTTS via PaperUI and place the snapshot jar file (not the sources jar) in /usr/share/openhab2/addons then restart OH.

1 Like

Thanks.

Uninstalled MaryTTS 2.5.3 from PaperUI. downloaded and moved 2.5.4 snapshot file to addons as suggested.
Stopped and restarted OH; stopped, cleared cache and restarted; and finally rebooted.
No change in behavior, but it’s not broken any worse than it was.

Anything else to look at?

1 Like

Looking at the two examples above the only difference is the period between the two comments. Have you tried using a comma instead? If the period is needed maybe try adding backslash’s e.g. comment.\comment 2.

Also, set the binding to DEBUG and check the logs, it may give a better idea of what the issue is. And try using quotes with each comment.
Examples:

smarthome:voice say "washer is done". "Dryer is done."
smarthome:voice say "washer is done\.\ dryer is done."
smarthome:voice say "washer is done, dryer is done."

Single quote

smarthome:voice say 'washer is done. dryer is done.'
1 Like

Hey @Grumpy.Oldman I could reproduce your issue and made a fix for it:

I hope that will resolve your issues! :slight_smile:

2 Likes