Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以使用SWIG生成的JNI从C代码调用java方法?_Java_C_Java Native Interface_Swig - Fatal编程技术网

是否可以使用SWIG生成的JNI从C代码调用java方法?

是否可以使用SWIG生成的JNI从C代码调用java方法?,java,c,java-native-interface,swig,Java,C,Java Native Interface,Swig,我正在尝试使用SWIG生成我的JNI。我已经有了正在运行的JNI代码,但它是手工编写的,而且越来越复杂,维护起来也越来越困难 我在C中的一些函数是从Java调用的,然后它们调用Java中的一些方法(可能这不是一个好主意,但它现在正在工作) 我想知道SWIG是否有可能生成这种JNI代码 是的,这应该是可能的 swig-1.3.6及以后版本也支持以下语言: JavaJDK1.1及更新版本 引自 更多信息请点击此处: > > >更新> />强:关于从C++调用java的更多信息,请看:,我知

我正在尝试使用SWIG生成我的JNI。我已经有了正在运行的JNI代码,但它是手工编写的,而且越来越复杂,维护起来也越来越困难

我在C中的一些函数是从Java调用的,然后它们调用Java中的一些方法(可能这不是一个好主意,但它现在正在工作)


我想知道SWIG是否有可能生成这种JNI代码

是的,这应该是可能的

swig-1.3.6及以后版本也支持以下语言: JavaJDK1.1及更新版本

引自

更多信息请点击此处:


<> > > >更新> />强:关于从C++调用java的更多信息,请看:

,我知道的这种类型的JNI包装器都是C++的,所以不适合您的需要。

用java调用CHIG很容易生成JNI代码,我已经做过了。但我的问题是另一个方向,从C函数调用Java方法。所以这并不能解决我的问题。@ DDSS我已经用另一个链接更新了我的答案,我希望你会发现它有用。谢谢你的帮助,但是这是C++,我的代码是纯C。你是指一个工具来生成使用FindClass、GetMethodID、CalvoDoad方法的代码,而不是什么?@类似的东西@ @ ButBuldGET或者至少生成代码,让我可以使用JNIEnv、JCype和JObjs来完成,而不必从包装文件……C++中手动地转发。