Modbus IP failed with "NoClassDefFoundError: com/serotonin/timer/TimeSource" for branch scadabr-1.1.0-RC\ScadaBR.war


#1

I deploy with the ScadaBR.war from branch “scadabr-1.1.0-RC" under the Environment:
JDK 8
Tomcat 9.0

now I try to configure the data point of Modbus IP. but I failed to get the data, and check the tomcat log, it shows error:
java.lang.NoClassDefFoundError: com/serotonin/timer/TimeSource
at com.serotonin.modbus4j.ModbusMaster.getMessageControl(ModbusMaster.java:315)

I check the folder “C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps\ScadaBR\WEB-INF\lib” and find there’s no “serotonin-timer.jar”, so I copy this file from “scadabr-1.1.0-RC\WebContent\WEB-INF\lib" to the above deployment folder. but after that, I cannot open the scadabr main page, it shows new error:
org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [com.serotonin.mango.MangoContextListener]
java.lang.NoSuchMethodError: com.serotonin.timer.RealTimeTimer.schedule(Lcom/serotonin/timer/TimerTask;)V
at com.serotonin.mango.util.timeout.TimeoutTask.(TimeoutTask.java:24)

if I delete the “serotonin-timer.jar” again, the scadabr page can be open but Modbus IP data cannot be get.

does anyone know how to handle the error?

thank you very much