java 与 c++ 对接 (JNI)

我们的项目是linux下 C++项目, 其中有一些API提供给用户去写自己的application,然后在我们的平台上运行,但是我现在的工作要用java语言来写这个application,依然可以在我们的c++上面运行. 在这其中,可能会需要到c++ 去调用java的函数,同样java函数体中也需要调用c++的函数接口,初步认为JNI好像可以做这个事情,但是想问问还有没有别的主流的技术,可以实现这个问题

如果是pc加上特定的操作系统,可以用jni,但是c++的代码是编译成机器代码的,是和硬件/操作系统相关的,如果你是手机之类,就需要考虑无法跨平台的问题了。

如果你是Android,可以考虑使用jna,比较方便,否则你的jni函数命名要符合规则才能被Java调用