создание процесса с помощью spawn - это не то же самое, что запуск его в командной строке. Вы можете передать абсолютный путь к исполняемому файлу, например,
spawn('/full/path/to/dita',
['--input=C:\Users\aaa\Desktop\ditamaps\mobile-phone\mobilePhone.ditamap', '--output=C:\Users\aaa\Desktop', '--format=pdf'],
{
cwd: $scope.ditaPath + "\\bin"
}, function (error, stdout, stderr) {
// work with result
console.log(stdout);
console.log(stderr);
console.log(error);
}
);
или если вы хотите эмулировать командную строку
spawn('cmd.exe',
['dita', '--input=C:\Users\aaa\Desktop\ditamaps\mobile-phone\mobilePhone.ditamap', '--output=C:\Users\aaa\Desktop', '--format=pdf'],
{
cwd: $scope.ditaPath + "\\bin"
}, function (error, stdout, stderr) {
// work with result
console.log(stdout);
console.log(stderr);
console.log(error);
}
);
оба решения должны работать, но в вашем сценарии, я думаю, второе может быть легко реализовано.