JNI

JNI

Java Native Interface (JNI) ist eine standardisierte Anwendungsprogrammierschnittstelle (API) zum Aufruf von plattformspezifischen Funktionen bzw. Methoden aus der Programmiersprache Java heraus.

Allerdings ist ein Java-Programm, das JNI-Aufrufe verwendet, nicht mehr plattformunabhängig, falls die native Programmbibliothek nicht auf allen Plattformen verfügbar ist.

Inhaltsverzeichnis

Einsatzzweck

So ermöglicht es JNI beispielsweise, dass ein Java-Programm Funktionen einer Windows-DLL oder einer shared library unter Linux, die in C oder C++ programmiert sind, aufruft. Umgekehrt ist ebenfalls möglich, dass „Native“-Programme Java-Methoden über JNI aufrufen oder eine komplette JVM ausführen können.

Java ruft Native auf

Um aus Java eine native Methode aufzurufen, muss diese zunächst als „native“ deklariert werden. Zudem muss das Objekt selbst die native Programmbibliothek mit dem Aufruf von „System.loadLibrary("<Name der Bibliothek>")“ laden, bevor die native Methode selbst aufgerufen werden kann.

Das Javaprogamm wird übersetzt und anschließend mit dem Softwarewerkzeug javah eine Headerdatei erstellt, die die Funktionsdeklaration vorgibt. Mit dieser Headerdatei kann dann die native Programmbibliothek erstellt werden.

Eine der populärsten Anwendungen von JNI ist die Programmbibliothek Standard Widget Toolkit (SWT), die über JNI die Verwendung von Elementen der Grafischen Benutzeroberfläche des Betriebssystems ermöglicht.

Native ruft Java auf

Ein Aufrufgrund von Java-Methoden aus nativen Programmen ist die Ausführung einer Java-Anwendung als Netzwerkdienst auf Windows. So gibt es zum Beispiel eine Open-Source-Software namens JavaService, die JNI dafür verwendet.

Literatur

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • JNI — may refer to:* Java Native Interface, a programming framework that allows Java code running in the Java virtual machine to call and be called by native applications. * Junín, Buenos Aires, IATA code …   Wikipedia

  • JNI — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom.   Sigles d’une seule lettre   Sigles de deux lettres > Sigles de trois lettres   Sigles de quatre lettres …   Wikipédia en Français

  • JNI — …   Википедия

  • JNI — noun Java native interface …   Wiktionary

  • JNI — Java Native Interface (Computing » Software) * Junin, Buenos Aires, Argentina (Regional » Airport Codes) …   Abbreviations dictionary

  • JNI — Java Native Interface …   Acronyms

  • jni — ISO 639 3 Code of Language ISO 639 2/B Code : ISO 639 2/T Code : ISO 639 1 Code : Scope : Individual Language Type : Living Language Name : Janji …   Names of Languages ISO 639-3

  • JNI — Java Native Interface …   Acronyms von A bis Z

  • JNI — abbr. Java Native Interface …   Dictionary of abbreviations

  • JNI — abbr. Java Native method Interface (Java, API) comp. abbr. Java Native Interface …   United dictionary of abbreviations and acronyms

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”