java — Сборка avahi для использования в Oracle jvm (ошибка: jni.h не найден)

Это продолжение следующего вопроса: Ошибки компиляции при определении макроса для преобразования экземпляра класса дела в карту и обратно

Ответ там решил мою первоначальную проблему — я не устанавливал зависимости. Однако сейчас у меня проблема, потому что ant clean all до сих пор не может найти jni.h, Возможно, это связано с тем, что в инструкциях сказано, что нужно установить open jdk 6. Есть ли обходной путь для Oracle jdk 7. Вот ошибка, которую я получаю:

myUser@ubuntu:~/Downloads/avahi4j-0.1$ ant clean all
Buildfile: /home/myUser/Downloads/avahi4j-0.1/build.xml

clean:
[exec] make: Entering directory `/home/myUser/Downloads/avahi4j-0.1/src'
[exec] rm -f avahi4j_Client.o avahi4j_EntryGroup.o avahi4j_Avahi4JConstants.o thread-watch.o avahi4j_ServiceBrowser.o avahi4j_ServiceResolver.o avahi4j_RecordBrowser.o libavahi4j.so ./*~
[exec] make: Leaving directory `/home/myUser/Downloads/avahi4j-0.1/src'
[delete] Deleting directory /home/myUser/Downloads/avahi4j-0.1/classes

init:
[mkdir] Created dir: /home/myUser/Downloads/avahi4j-0.1/classes

jnilib:
[exec] make: Entering directory `/home/myUser/Downloads/avahi4j-0.1/src'
[exec] gcc -I. -I/usr/lib/jvm/java-6-sun/include -I/usr/lib/jvm/java-6-sun/include/linux/ -I/usr/include/avahi-common  -O3 -fPIC -DVER_MAJ="0" -DVER_MIN="1"   -c -o avahi4j_Client.o avahi4j_Client.c
[exec] make: Leaving directory `/home/myUser/Downloads/avahi4j-0.1/src'
[exec] avahi4j_Client.c:23:17: fatal error: jni.h: No such file or directory
[exec]  #include <jni.h>
[exec]                  ^
[exec] compilation terminated.
[exec] make: *** [avahi4j_Client.o] Error 1

BUILD FAILED
/home/myUser/Downloads/avahi4j-0.1/build.xml:75: exec returned: 2

Total time: 0 seconds

0

Решение

Я нашел проблему. В моем случае мне нужно было внести следующие изменения в src/Makefile:

# It must be a JDK, not a JRE !!!
#JDK_HOME := /usr/lib/jvm/java-6-sun
JDK_HOME := /usr/lib/jvm/java-7-oracle
#JDK_HOME := /usr/lib/j2sdk1.6-sun
0

Другие решения