What does "The APR based Apache Tomcat Native library was not found" mean?

fresh_dev picture fresh_dev · Jan 3, 2012 · Viewed 278.7k times · Source

I am using Tomcat 7 in Eclipse on Windows. When starting Tomcat, I am getting the following info message:

The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path

What does this mean and how can I provide the APR library?

Answer

GreyFairer picture GreyFairer · Jan 3, 2012

It means exactly what it says: "The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path"

The library referred to is bundled into an OS specific dll (tcnative-1.dll) loaded via JNI. It allows tomcat to use OS functionalities not provided in the Java Runtime (such as sendfile, epoll, OpenSSL, system status, etc.). Tomcat will run just fine without it, but for some use cases, it will be faster with the native libraries.

If you really want it, download the tcnative-1.dll (or libtcnative.so for Linux) and put it in the bin folder, and add a system property to the launch configuration of the tomcat server in eclipse.

 -Djava.library.path=c:\dev\tomcat\bin