Ciao a tutti,
Sto cercando di capire come funziona la Java Native Interface. Tutti i tutorial o manuali spiegano, nel loro HelloWorld, come generare una dll con funzioni da richiamare da un programma java. un passo del procedimento e' la generazione di un header file ad hoc per Jni utilizzando il programma javah.
Il passo immediatamente successivo e' l'implementazione dei metodi dichiarati nell'header file.
Quello che non mi e' chiaro e' cosa fare se la dll mi viene fornita da terzi. Una libreria diciamo scritta per programmi in linguaggio C/C++. In quel caso alla creazione dell'header non puo' seguire l'implementazione delle funzioni dichiarate perche' tale implementazione gia' e' stata scritta. E a quanto ho capito, senza header generato con javah il meccanismo JNI non funziona.
Una soluzione che mi viene in mente e' creare una classe C++ wrapper che richiama i metodi della dll e implementa il famoso header file.
Voi che ne pensate ?