У меня есть node js, который запускает файл JAR на сервере, когда пользователь нажимает кнопку и возвращает некоторые данные. Он работает на локальной машине, но когда я захожу на heroku, он возвращает сообщение: stderr error: [object Object]. Я установил jvm buildpack и попытался запустить файл jar с помощью heroku run bash --app APP, и он работает нормально. Если я использую JSON .stringfy для ошибки, она возвращает длинный объект, который я не могу понять.
"Ошибка stderr: {\" подключение \ ": false, \" _ hadError \ ": false, \" _ parent \ ": null, ... продолжается.
const exec = require('child_process').exec;
const jarPath = path.join(__dirname, '..', 'test.jar');
router.post('/', async (req, res) => {
try {
const {stdout, stderr} = await exec(`java -jar ${jarPath} test test`);
if (stderr) throw Error(`stderr error: ${stderr}`);
res.status(200).json(stdout);
} catch (e) {
res.status(500).json({msg: e.message, dir: jarPath});
}
});