Здравствуйте.
Как мне запустить дочернюю программу, например на java "java -jar p.jar", и получать event'ами output, и возможно вводить свои данные input, чтобы они передавались прямо на дочерний процесс.
Как такое реализовать? Можно пример с event'ами?
Работал с node, там такое реализовывалось с помощью child_process.spawn, мой пример на node:
const
{ spawn } = require('child_process'),
readline = require('readline'),
rl = readline.createInterface({
input: process.stdin,
output: process.stdout
}),
log = (str) => {
process.stdout.write(`LOG: ${str}`)
}
srv = spawn('sms.bat', { stdio: [null, null, process.stderr] });
rl.on('line', (input) => {
srv.stdin.write(`${input}\n`);
log(input);
});
srv.stdout.on('data', (data) => log(data.toString()));
srv.on('close', () => process.exit());
В py нашел subprocess, но как сделать с event'ами, так и не понял.
Спасибо.