Java programming with Java Native Interface ( JNI ) / Calling Native C functions from JAVA using JNI

pre-requisite – Install Java SE Development Kit 6u14 under /usr/jdk1.6.0_14
Write a JAVA class [ ]

public class HelloWorld  { static { System.loadLibrary("hello"); } public native void printHelloWorld();

Compile the class using javac

sudo javac

after this HelloWorld.class file should get created.
Create header file required for writing a native program

sudo javah -jni HelloWorld

Write a helloworld.c native c program.

#include "HelloWorld.h"
#include <stdio.h>
Java_HelloWorld_printHelloWorld (JNIEnv *env, jobject obj) { printf("Hello Worldn");

Create a shared library.

gcc -I/usr/jdk1.6.0_14/include -I/usr/jdk1.6.0_14/include/linux -shared -o HelloWorld.c

Write a Main java class[ ], which will call native function.

public class Main { public static void main(String[] args) { new HelloWorld().printHelloWorld(); }



Run the program

java Main

1) Using the JAVA Native interface’s
2) JNI Example
3) Integrating Native methods into Java
4) Imp- Introduction to JNI

Android Android Commands Android Java Applications Application Libraries Bash / Shell Scripts Bluetooth driver Build Frameworks Commands and Packages Content Management System - CMS Core Kernel C Programs Development Environment Setup Errors & Failures File Systems git Go Language Programs Hardware Platforms Home HTML JAVA Programs Kernel & Device Drivers Kernel Booting and Porting Linux, OS Concepts and Networking Linux Device Drivers Linux Host, Ubuntu, SysAdmin Linux Kernel Linux Networking Middleware Libraries, HAL NDK / Middleware / HAL Network Driver OS Concepts PHP Programming Languages RaspberryPi Scripting and Automation Search Engine Optimisation ( SEO ) Social Media Socurce Code Management ( SCM ) System Administration, Security Testing and Debugging Uncategorized Userspace Utilities Web design and development Wordpress Yocto / Bitbake / Openembedded
Tags: ,

Leave a Reply