Progress Report
Well after I finally had some hands on with JNIPP, JACE and Start J to automatically generate wrappers for native interfaces, the problem was putting it together and make it work on a development environment. Well chose to work it out on intellij, with very little success last week. But before even thinking about intellij I had a layout for this system.
#> I could generate the wrappers automatically with the tools mentioned above, or even hand code them.
#> Once I'm done with this, I could actually fill in the native method definitions.
#> Compile the files
#> Link the shared object library
#> Generate jars for the compiled files
#> Use the jars on the class path
#> set the library path to the shared object.
and I am good to go.
Well this involves a lot of steps, so the best solution was to code a Makefile, to automate the process. The Makefile is attached along with the source code. Now it was turn to execute the program on intellij. After I added the jars to the classpath, intellij showed an error while compiling the code [Unsatisfied link error]. Intellij was not able to find the shared object so, I used the System.getProperty(“java.library.path”), to find the library path. Placed the shared object in the right place, in my case it was (JDK_HOME)/jre/lib/i386, and the program executed successfully. The entire source is attached to this document.
The bin1.tar.gz attachment consists of the Makefile and all the source code.
The thesis_source.tar.gz attachment consists of files laid out for intellij.
Note: for intellij the shard object library called libdhrylib.so present in the thesis_source must be placed in the java.library.path.