summaryrefslogtreecommitdiffstats
path: root/java/doc/JNIForDummy.rst
diff options
context:
space:
mode:
authorEmmanuel Raviart <eraviart@entrouvert.com>2004-07-20 12:41:35 +0000
committerEmmanuel Raviart <eraviart@entrouvert.com>2004-07-20 12:41:35 +0000
commita7c3554f40b6b017a4d4abc396de64ed89342a62 (patch)
tree423af9b1f3f794da03455fc6c27347eea9c3e173 /java/doc/JNIForDummy.rst
parentff57e03478b2d6460aa2c60110ddfd976c21ca00 (diff)
downloadlasso-a7c3554f40b6b017a4d4abc396de64ed89342a62.tar.gz
lasso-a7c3554f40b6b017a4d4abc396de64ed89342a62.tar.xz
lasso-a7c3554f40b6b017a4d4abc396de64ed89342a62.zip
Added Java binding.
Diffstat (limited to 'java/doc/JNIForDummy.rst')
-rw-r--r--java/doc/JNIForDummy.rst36
1 files changed, 36 insertions, 0 deletions
diff --git a/java/doc/JNIForDummy.rst b/java/doc/JNIForDummy.rst
new file mode 100644
index 00000000..4f8cd315
--- /dev/null
+++ b/java/doc/JNIForDummy.rst
@@ -0,0 +1,36 @@
+================
+JNI for dummy :)
+================
+
+Sous Linux le nom de la librairie compilée doit obligatoirement commencer par **lib** et
+finir par **.so**.
+
+Pour charger à l'éxécution la librairie elle doit-être dans le
+LD_LIBRAIRY_PATH et en Java il faut la charger avec **System.loadLibrary**::
+
+Par exemple si vous avec généré la librairie libjlasso.so, on la chargera
+avec::
+
+ System.loadLibrary("jlasso");
+
+Pour connaitre le nom de la librairie que le système attend, on peut
+utiliser::
+
+ System.out.println(System.mapLibraryName("jlasso"));
+
+Comment ajouter des fonctions JNI
+=================================
+
+:ref: http://java.sun.com/docs/books/jni/html/jniTOC.html
+:ref: http://gbm.esil.univ-mrs.fr/~tourai/Java/node48.html
+
+Il faut créer les classes Java, et marquer les méthodes qui doivent être
+écrite en C, avec le mot cle native. Ces méthodes n'ont pas de corps en
+Java.
+
+Il faut ensuite exécuter le Makefile se trouvant dans lasso/java pour qu'il
+génère les fichiers d'entête JNI.
+
+Il ne reste plus qu'a reprendre la signature de la méthode et de la coder
+dans le .c
+