我想用两种不同的语言 java 和 c++ 编写一个程序,它需要在其 c++ 组件和 java 组件之间进行动态和交互式通信。我知道有 jni 和 jna 用于在 java 中调用本机方法,但我认为这种方法不合适为了我的目的。
例如:说一个程序,它的用户界面是用 c++ 编写的,而其他是用 java 编写的,我认为这两个组件的通信不能通过 jni 和 jna 来完成。例如 Open Office 是用 java 和 c++ 编写的。我在互联网上搜索并找到了一些进程间通信的方法,如共享内存、管道、信号、消息传递……但我不知道进程间通信是我需要的。似乎ipc用于在两个不同的进程中通信软件,但我的程序都是一个进程(我是对的吗?!)
所以我的问题是:其组件用不同语言编写的程序如何相互通信?我怎么能做到这一点?