有没有一种方法可以在不使用 SWIG 的情况下 运行 Java 中的 c++ 函数?

Is there a way I can run c++ functions inside Java without using 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 包装器