初用java和jni使用,很多地方出现错误,最恶心的错误就是:
A fatal error has been detected by the Java Runtime Environment.....
或者是提示:
find java class error!
这是因为c++程序没有找到需要调用的java class文件。
如果使用jni找不到java类的时候,一般问题出现在以下方面:
(1)jclass cls = env->FindClass("tdb/queryTDB"); //设置java类路径,tdb文件夹下的queryTDB.class,注意类不要加.class
(2)java文件中package有没有指定:package tdb;,如果指定了java文件中的路径是否都是加上了package的路径:String directory = "./tdb/CompProfileOntologyTDB";
(3)还需要别的jar包,但没有在options