Categorías destacadas
programacion php    
Artículo
5
¡votar!

 Utilizar el Java Native Interface (JNI)


Paso 5: Crear una Librería Compartida

Recuerda que en el Paso 1: Escribir el Código Java se utilizó la siguiente llamada de método para cargar una librería compartida llamada hello dentro de nuestro programa en el momento de la ejecución.

System.loadLibrary("hello");

Ahora estámos listos para crear la librería compartida.

En el paso anterior, creamos un fichero C en el que escribimos la implementación para el método nativo displayHelloWorld. Se grabó el método nativo en el fichero HelloWorldImp.c. Ahora, deberemos compilar este fichero en una librería, que debe llamarse hello para corresponder con el nombre utilizado en el método System.loadLibrary.

Se utilizan las herramientas disponibles para compilar el código nativo que se creo en los pasos anteriores en una librería compartida. En Solaris, se creará una librería compartida, mientras que en Windows 95/NT se creará una librería de enlace dinámico (DLL). Recuerda especificar el path o paths necesarios para todos los ficheros de cabecera necesarios.

En Solaris, el siguiente comando construye una librería llamada libhello.so.

cc -G -I/usr/local/java/include -I/usr/local/java/include/solaris \
      HelloWorldImp.c -o libhello.so

En Win32, el siguiente comando construye una librería de enlace dinámico hello.dll utilizando Microsoft Visual C++ 4.0.

cl -Ic:\java\include -Ic:\java\include\win32 -LD HelloWorldImp.c -Fehello.dll

Por supuesto, se necesita especificar el path de include que corresponda con la configuración de nuestra máquina.

Publicado por:
Ricard Lou Torrijos
Recomendar
a un amigo
Compartir
en redes
 
Comentarios
 
BBDD
Entornos de desarrollo
Entretenimiento
Herramientas
Internet
Lenguajes de script
Lenguajes imperativos
Lenguajes orientados a objeto
Otros lenguajes
Plataformas
Teoría
Varios
Copyright © 1998-2011 Programación en Castellano. Todos los derechos reservados
Datos legales | Politica de privacidad | Contacte con nosotros | Publicidad

Diseño web y desarrollo web. Un proyecto de los hermanos Carrero.

Red internet:
Juegos gratis | Servidores dedicados
Más internet: Password | Directorio de weblogs | Favicon