The JDK installation must be configured to allow linking JNI modules to the shared library that implements the JVM JNI interfaces.
JNI is a bidirectional interface between C/C++ code and the JVM. It is used by FWD:
- FWD has a native library which is used on the FWD Client to access APIs in the operating system to do things that cannot be done directly in pure Java.
- The FWD Spawner (which is called by the FWD Application Server to launch FWD Client JVM instances) loads a JVM using JNI.
Linux | Windows |
---|---|
Run the following commmands:sudo rm /usr/lib/libjvm.so sudo ln -s /usr/lib/jvm/default-java/jre/lib/amd64/server/libjvm.so /usr/lib/libjvm.so This will ensure that the build process for linking the spawner and the native library ( libp2j.so ) will properly link to the correct JVM. |
Ensure the java link library jvm.lib is copied into the GCC lib directory so that it can be found during compilation:32-bit: copy %JAVA_HOME%\lib\jvm.lib \mingw32\i686-w64-mingw32\lib\ 64-bit: copy %JAVA_HOME%\lib\jvm.lib \mingw64\x86_64-w64-mingw32\lib\ |