jdk descargar java linux java-native-interface java-8 header-files

java - descargar - JDK 1.8 en Linux falta el archivo de inclusión de JNI



jdk 6 32 bits (2)

Así parece. #include "jni_md.h" incluiría el archivo en el mismo directorio que jni.h , pero se coloca en la carpeta de linux .

En versiones anteriores de JDK, parece que el archivo y otro se include/linux carpeta include/linux , pero hay enlaces simbólicos a ambos archivos en include .

Así que puedes crear enlaces simbólicos a ambos archivos:

$ sudo ln -s /opt/jdk1.8.0_11/include/linux/jni_md.h /opt/jdk1.8.0_11/include/jni_md.h $ sudo ln -s /opt/jdk1.8.0_11/include/linux/jawt_md.h /opt/jdk1.8.0_11/include/jawt_md.h

Editar

Como se indica en los comentarios de Absurd-Mind y Mikkel, también existe la opción de agregar esa ruta a las opciones del compilador de makefile:

-I$(JAVA_HOME)/include/linux/

Estoy tratando de compilar el siguiente proyecto:

https://github.com/entropia/libsocket-can-java

Siempre me sale este mensaje de error? ¿Alguien sabe cómo solucionarlo, es posiblemente un error en JDK 1.8.0.11 en Linux (x64 Debian Wheezy)?

In file included from jni/de_entropia_can_CanSocket.h:2:0, from jni/cansocket.cpp:23: /opt/jdk1.8.0_11/include/jni.h:45:20: fatal error: jni_md.h: No such file or directory #include "jni_md.h" ^


No, esto no es un error. La forma correcta de resolver este problema es proporcionar las opciones del compilador -I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux . De esta manera sus scripts de compilación permanecen portátiles.

El OP se enfrenta al problema en Linux, pero si alguien se enfrenta a este problema en Windows, agregue las siguientes opciones del compilador.

-I"%JAVA_HOME%/include" -I"%JAVA_HOME%/include/win32" donde JAVA_HOME apunta a su directorio de instalación de JDK, generalmente ''C:/Program Files/Java/jdk1.{7|8}.{}_{xx}''