有没有一种方法,我可以在Java内运行c++函数,而不使用SWIG?



我想为c++创建一个包装器,这样我就可以运行我用Java编写的代码。有没有一种方法可以在不使用SWIG的情况下实现这一点?

据我所知,JNI是在Java应用程序中运行外国语言代码的唯一方法。其他解决方案,如SWIG只是JNI包装器。

如果您只有1-2个函数需要从Java代码中调用,SWIG可能是多余的。试着阅读SWIG文档:https://www.swig.org/Doc1.3/Java.html#java_overview

总结你可以使用原始的JNI或者尝试像SWIG这样的JNI包装器