The JVM exposes an option called -Xcheck:jni which runs various checks against JNI usage by applications. Further explanation of this JVM option can be found in: https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/clopts002.html and https://www.ibm.com/support/knowledgecenter/en/SSYKE2_8.0.0/com.ibm.java.vm.80.doc/docs/jni_debug.html. When run with this option, the JVM will print out any warnings or errors it encounters with the JNI.
We should run the libhdfs tests with -Xcheck:jni (can be added to LIBHDFS_OPTS) and fix any warnings / errors. We should add this option to our ctest runs as well to ensure no regressions are introduced to libhdfs.