我希望通过IPC在Node.js和Java子进程之间进行通信。 我在寻找不需要打开端口的建议。
const { spawn } = require('child_process')
// Java App is within args
const args = []
const javaProcess = spawn('java', args, { cwd: __dirname })
javaProcess.on('message', (m) => {
console.log('PARENT got message:', m)
})
// Sends { 'hello': 'world' } to the Java process
javaProcess.send({ hello: 'world' })
我知道Node层可以将消息发送到子流程,我只是不知道如何在Java层中侦听消息并将其发送回去。
非常感谢任何帮助,谢谢!
我通过使用命名管道解决了这个问题...
在节点上,我使用了Net API https://nodejs.org/api/net.html#net_ipc_support
在Java上,我使用了RandomAccessFile https://docs.oracle.com/javase/7/docs/api/java/io/RandomAccessFile.html