Hallo zusammen,
ich arbeite im Moment daran, die Owlapi in C++ verfügbar zu machen scheitere allerdings im Moment daran, die Methoden der jar Datei zu finden, was doch recht nervtötend ist, da ich nicht weiß und auch in der Dokumentation keinen Hinweis darauf finde, wie ich das umsetzen soll.
Also, folgender Lösungsansatz von mir, der nicht funktioniert:
char classpath[] = "-Djava.class.path=/home/username/owlapi/owlapi-bin.jar";
char libpath[] = "-Djava.library.path=/usr/lib/jvm/java-6-sun-1.6.0.10/jre/lib/i386/server/libjvm.so";
char classname[] ="org/semanticweb/owl/apibinding/OWLManager"; //
char methodname[] = "createOWLOntologyManager";
ich versuche also den OWLOntologymanger zuerstellen mit CreateOWLOntologymanager
die Klasse OWLManager wird auch im angegebenen Pfad gefunden.
Allerdings wird die Methode createOWLOntologymanager nicht gefunden.
SourceForge.net Repository - [owlapi] View of /owl1_1/trunk/examples/src/main/java/org/coode/owlapi/examples/Example1.java (in der Codezeile 47 im Beispiel steht dies in Java)
meine Frage ist, was mach ich da falsch? Hier noch ein Auszug aus meinem Quelltext von C++
jmethodID javamethod;
cout << "Methode GetMethod " << className << endl << methodName << endl << endl;
javamethod
= env->GetMethodID(FindClass(className.c_str()), methodName.c_str(), "()V");
if (javamethod == NULL)
{
cout << "Methode nicht gefunden!\n";
return NULL;
viele Grüße,
sukka
ich arbeite im Moment daran, die Owlapi in C++ verfügbar zu machen scheitere allerdings im Moment daran, die Methoden der jar Datei zu finden, was doch recht nervtötend ist, da ich nicht weiß und auch in der Dokumentation keinen Hinweis darauf finde, wie ich das umsetzen soll.
Also, folgender Lösungsansatz von mir, der nicht funktioniert:
char classpath[] = "-Djava.class.path=/home/username/owlapi/owlapi-bin.jar";
char libpath[] = "-Djava.library.path=/usr/lib/jvm/java-6-sun-1.6.0.10/jre/lib/i386/server/libjvm.so";
char classname[] ="org/semanticweb/owl/apibinding/OWLManager"; //
char methodname[] = "createOWLOntologyManager";
ich versuche also den OWLOntologymanger zuerstellen mit CreateOWLOntologymanager
die Klasse OWLManager wird auch im angegebenen Pfad gefunden.
Allerdings wird die Methode createOWLOntologymanager nicht gefunden.
SourceForge.net Repository - [owlapi] View of /owl1_1/trunk/examples/src/main/java/org/coode/owlapi/examples/Example1.java (in der Codezeile 47 im Beispiel steht dies in Java)
meine Frage ist, was mach ich da falsch? Hier noch ein Auszug aus meinem Quelltext von C++
jmethodID javamethod;
cout << "Methode GetMethod " << className << endl << methodName << endl << endl;
javamethod
= env->GetMethodID(FindClass(className.c_str()), methodName.c_str(), "()V");
if (javamethod == NULL)
{
cout << "Methode nicht gefunden!\n";
return NULL;
viele Grüße,
sukka