Java의
FFI로 Java 언어/JVM에서
C/
C++ 언어의 함수를 호출하기 위한
API이다.
javah 명령으로 C/C++ 헤더 파일을 생성하고 생성된 헤더 파일에 맞춰 C/C++ 코드를 작성하게 된다.
유사 기술로 JNA(Java Native Access)가 있다. JNI가 자바 소스코드로 부터 헤더파일을 생성해 주는 것과 달리 libffi라 불리는 Native Library를 사용하여 동적으로 Native 함수를 호출해 준다.