¼Ò¼³ java.jni ¼Ò½ºÄڵ堠ÀÚ¹Ù¿¡¼­ C »ç¿ëÇϱ⠠C¾ð¾î¸¦»ç¿ëÇÑHelloWorld!Ãâ·Â  

C¾ð¾î¸¦ »ç¿ëÇÑ HelloWorld! Ãâ·Â

HelloWorld.java

public class HelloWorld{
  
static
{
    System.loadLibrary(
"helloworld"
);
    System.out.println(
"helloworld.dll loaded"
);
  }
  
public native void 
printHelloWorld();
  
public static void main(String[] args) throws 
Exception{
    
new 
HelloWorld().printHelloWorld();
  } 
}

C:\20>javac HelloWorld.java
C:\20>javah HelloWorld

HelloWorld.c

#include <jni.h> 
#include 
"HelloWorld.h" 
#include <stdio.h> 

JNIEXPORT 
void 
JNICALL Java_HelloWorld_printHelloWorld(JNIEnv *env, jobject obj)  

    printf(
"Hello world!\n"
); 
    
return

}

C:\20>cl -Ic:\jdk1.3.1\include -Ic:\jdk1.3.1\include\win32 -LD HelloWorld.c -Fehelloworld.dll

HelloWorld.c

/dll
/implib:helloworld.lib
/out:helloworld.dll
HelloWorld.obj
   Creating library helloworld.lib and object helloworld.exp

C:\20>java HelloWorld
Hello World!

native¸Þ¼­µå¸¦ È£ÃâÇϸé helloworld.dllÆÄÀÏÀ» ã¾Æ¼­ ½ÇÇàÇϰԵ˴ϴÙ. dllÆÄÀÏÀº javah¸¦ ÅëÇØ¼­ ¸¸µé¾îÁø Çì´õÆÄÀϰú CÆÄÀÏÀ» ÅëÇØ¼­ »ý¼ºµË´Ï´Ù.



jabookÀúÀÚ¸íÇÔ
Á¦¸ñ:¼Ò¼³°°Àº¹Ì´ÏÄÚµå
ÀÛ¼ºÀÚ:Àںϸâ¹ö ±è´ë¼º