Не удается открыть файл включения "jni.h", такого файла или каталога не существует - PullRequest
5 голосов
/ 11 августа 2010

Я реализую простой пример JNI, приведенный в

http://java.sun.com/docs/books/jni/html/start.html

На втором последнем шаге, когда компилируется источник C,

используется следующая команда ---

C: \ Program Files \ Java \ jdk1.6.0_21> cl -IC: \ Program Files \ Java \ jdk1.6.0_21 \ include -IC: \ Program Files \ Java \ jdl1.6.0_21 \ include \ win32 - MD -LD Callbacks.c -FeCallbacks.dll

Я получаю следующую ошибку ---

"Невозможно открыть включаемый файл" jni.h ", такого файла или каталога не существует."

Но jni.h существует в папке java / jdk1.6.0_21 / include.

Как я могу удалить эту ошибку?

Ответы [ 2 ]

4 голосов
/ 11 августа 2010

Поскольку путь содержит пробелы, вам нужно заключить путь внутрь "", как cl -IC: \ Program Files \ Java \ jdk1.6.0_21 \ include e -I "C: \ Program Files \ Java \ jdl1.6.0_21 \ include \ win32" -MD -LD Callbacks.c -FeCallb acks.dll

0 голосов
/ 25 сентября 2017

Если путь содержит пробелы, вы должны указать путь в кавычках.В моем случае команда выглядит следующим образом:

cl -I"C:\Program Files\Java\jdk1.8.0_91\include" -I"C:\Program Files\Java\jdk1.8.0_91\include\win32" -LD HelloWorldImp.c -Fehello.dll

Надеюсь, это поможет.

...