Rexxcoder - 2021-04-07

Hello Marco and UCanAccess Team Members,

Recently I started writing application using Java, NetRexx and BSF4ooRexx using the UCanAccess v5.0.1 Jar Archive. I discovered an issue that pertains specifically to ARM architecture based Linux Distros using the OpenJDK 8 Java Environmet and UCanAccess v 5.0.1.

I wrote a java program to list the Registered JDBC Drivers in my Open JDK8 $JAVA_HOME/jre/lib/ext directory. Java program is attached for your reference.

The result of that run yields the following Stack Trace Message ...

Drivers Registered with the DriverManager:

Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class net.ucanaccess.jdbc.UcanaccessDriver
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at java.sql.DriverManager.isDriverAllowed(DriverManager.java:556)
at java.sql.DriverManager.isDriverAllowed(DriverManager.java:548)
at java.sql.DriverManager.getDrivers(DriverManager.java:446)
at LstRegisteredJDBCDrivers.main(LstRegisteredJDBCDrivers.java:47)

This only occurs when I use the OpenJDK8 installation. It does not occure with the Oracle Java 8 JDK.
The issue occurs on both 32 and 64 bit Linux Architectures on the Raspberry Pi 4.

I realize that opting for the Oracle implementation of the Java JDK will resolve the issue, but I'd prefer to have a resolution for the OpenJDK implementaton as some of the Debian and Ubuntu Linux packages are dependent upon that installation.

Please let me know if I can provide any more details to help with the resolution of the issue.

Best Regards and Wellness,

Tony Dycks (a.k.a. -- rexxcoder; i am a member of the BSF4ooRexx SourceForge development team)
panfisher@earthlink.net