Error loading a Java native library (.so) in apache tomcat 7 on CentOS 7 on Digital Ocean server

November 6, 2017 90 views
Java CentOS

This is the first time I use a DigitalOcean server. I appreciate your time to help!

I am trying to load a native library (libjsmile.so) in a web application with Apache Tomcat 7 on a CentOS 7 DigitalOcean server, but I still haven't succeeded.

-- I was able to use the libraray (the .jnilib version) as a Java application or a web application with Apache Tomcat 7 on a Mac.
-- I was able to load the libjsmile.so as a Java application on this CentOS 7 server.
-- The error starts to occur when I changed to an web application trying to load libjsmile.so in Apache Tomcat 7 in this CentOS 7 server.

I have tried to add

LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/share/tomcat/lib"

and/or

JAVA_OPTS="-Djava.library.path=/usr/share/tomcat/lib"

to the Tomcat configuration file (tomcat.conf) and put the libjsmile.so under that path. Yet it keeps giving me "java.lang.UnsatisfiedLinkError: smile.Wrapper.nativeStaticInit()" error.

I am not that experienced in web development and Linux, so I really appreciate any amount of help!

Be the first one to answer this question.