Введение в JNI
JNI является аббревиатурой нативного интерфейса Java, который предоставляет несколько API для реализации связи между Java и другими языками (в основном C & C ++). Начиная с Java 1.1, стандарт JNI стал частью платформы Java, которая позволяет коду Java взаимодействовать с кодом, написанным на других языках. Изначально JNI был разработан для нативных скомпилированных языков, особенно C и C ++, но он не мешает вам использовать другие языки программирования, если поддерживается соглашение о вызове. Использование Java для взаимодействия с локально скомпилированным кодом часто теряет переносимость платформы. Однако в некоторых случаях это приемлемо или даже необходимо. Например, используйте некоторые старые библиотеки для взаимодействия с аппаратными средствами, операционными системами или для повышения производительности программы. Стандарт JNI должен по крайней мере обеспечить, чтобы локальный код мог работать в любой среде виртуальной машины Java. Проще говоря, JNI удобен для Java для вызова функций на языках C и C ++; Java предоставляет интерфейсы (файлы заголовков), C и C ++ для реализации этих функций для вызова Java.
Не существует интерфейса для очистки экрана в Java, и вся система («CLS») на языке C может быть вызвана через JNI. Конечно, он ограничен очисткой экрана CMD и не поддерживает очистку консоли консоли Eclipse.
шаг:
1. Напишите экран Java, очищающий нативный интерфейс.
Public Class Clear {static {System.LoadLibrary ("clear"); // загрузка Clear.dll Dynamic Library} Общедоступная собственная статическая void clScmd (); // clear Ecren}2. Скомпилируйте clear.java и генерируйте clear.class
3. Используйте Javah для генерации соответствующего файла заголовка языка C
4. Используйте Visual Studio, чтобы создать проекты Win32 и генерировать соответствующие динамические библиотеки DLL
4.1 Создать проект
4.2 Тип приложения: DLL
4.3 Импортируйте файл заголовка Clear.h, сгенерированные на шаге 3, и два файла заголовка JNI.H и JNI_MD.H, которые необходимо полагаться на проект
jni.h находится в каталоге установки JDK.
jni_md.h находится в каталоге Win32 в каталоге включения пути установки JDK.
Скопируйте и вставьте эти три файла заголовка в каталог проектов:
Затем импортируйте их в VS:
Файл заголовка ---> Добавить ---> Существующие элементы-> Выберите три файла заголовка выше ---> Добавить
Изменить #include <jni.h> в файле заголовка clear.h на #include "jni.h"
4.4 Добавить файл .cpp и написать C -код.
Исходный файл ---> Добавить ---> Новый элемент-> c ++ Файл: clear.cpp
#include "clear.h" #include <ioStream> jniexport void jnicall java_clear_clscmd (jnienv *, jclass) {System ("cls"); // crem4.5 Настройка 64-битной динамической библиотеки DLL для генерации
Решение ---> Свойства
4.6. Создание DLL
Решение ---> щелкните правой кнопкой мыши, чтобы генерировать
5 Тест
5.1 Скопируйте clear.dll в каталог, где Clear.class находится в шагах 1 и 2.
5.2 Записать классы тестирования
открытый класс testjni {public static void main (string [] args) {system.out.println ("hello jni"); Clear.clscmd (); // clear}}}5.3 Компиляция тестовых классов
Javac testjni.java
5.4 выполнить тестовый класс
Java testjni
Идеальный экран чисто, сделайте это! ! !