I need to debug JNI issue of a team member. The problem is in a Java app interfacing a USB connected hardware using JNI. He mentions that JNI functions implemented in a C++ dll are not getting called by Java app. Also he specifically mentioned that it is a not an unsatisified link error problem, which was the first thing I would suspect.
The strange thing is that the Java App works fine on his development system and the JNI calls are being made properly. However on the target machine of the QA team, the Java app does not seem to work.
The DLL (32-bit) was generated using VS2010 and the target machine was WinXP/Win 7 32-bit system. I would rule out DLL method signature issue since DLL was recognised on the development system. As mentioned, it was not link issue.
What could be the issue in JNI methods not getting invoked at all? Could this be a problem with redistributables? How to debug (using JVM options) and ascertain the problem?
Standard debugging procedure: