Java LanguageJava Native Interface


Parametri

Parametro Dettagli
MEnv Puntatore all'ambiente JNI
jobject L'oggetto che ha invocato il metodo native non static
jclass La classe che ha invocato il metodo native static

Osservazioni

L'impostazione di JNI richiede sia un compilatore Java che nativo. A seconda dell'IDE e del sistema operativo, sono necessarie alcune impostazioni. Una guida per Eclipse può essere trovata qui . Un tutorial completo può essere trovato qui .

Questi sono i passaggi per configurare il collegamento Java-C ++ su windows:

  • Compilare i file di origine Java ( .java ) in classi ( .class ) usando javac .
  • Crea .h intestazione ( .h ) dalle classi Java che contengono metodi native usando javah . Questi file "istruiscono" il codice nativo su quali metodi è responsabile dell'implementazione.
  • Includere i file di intestazione ( #include ) nei file di origine C ++ ( .cpp ) che implementano i metodi native .
  • Compilare i file di origine C ++ e creare una libreria ( .dll ). Questa libreria contiene l'implementazione del codice nativo.
  • Specificare il percorso della libreria ( -Djava.library.path ) e caricarlo nel file di origine Java ( System.loadLibrary(...) ).

Callback (Chiamando i metodi Java dal codice nativo) richiede di specificare un descrittore del metodo. Se il descrittore non è corretto, si verifica un errore di runtime. Per questo javap -s è utile avere i descrittori creati per noi, questo può essere fatto con javap -s .

Java Native Interface Esempi correlati