好像JNI目前只能调用C或C++
编写的dll
但是c或者c++就可以调用任何语言

解决方案 »

  1.   

    不可能的,java的jni只跟标准的dll交互,如果跟com/dcom之类的控件交互,还得通过jni生成的DLL这一层进行,
    就算有c#-java桥,也是如此处理。不可能C#直接就可以调用javaAPI。
      

  2.   

    应该使用其他语言都可以为java产生动态库的,只要函数定义一致就可以了吧,我用delphi调用为java产生的dll(Cbuilder写的),dll的函数可以跟踪进去,返回就是失败,感觉就是入参不知怎么定义,郁闷,比如JINIEnv *,jobject类型在delphi对应什么?查看jini.h jobject应该就是个指针,jinienv就不知道了
    JNIEXPORT jint JNICALL Java_test_1dll_myNative_HLRDBCapacity
      (JNIEnv *, jobject);