Базовый c узел childprocess всегда возвращает ошибку - PullRequest
0 голосов
/ 23 апреля 2020

master. js:

const fs = require('fs');  
const child_process = require('child_process');  
for(var i=0; i<3; i++) {  
  var workerProcess = child_process.spawn('node', ['support.js']);  
  workerProcess.stdout.on('data', function (data) {  
    console.log('stdout: ' + data);  
  });  
  workerProcess.stderr.on('data', function (data) {  
    console.log('stderr: ' + data);  
  });  
  workerProcess.on('close', function (code) {  
    console.log('child process exited with code ' + code);  
  });  
}  

support. js:

console.log("Child Process " + process.argv[2] + " executed." );

Каждый раз, когда я запускаю свой основной процесс в консоли (cmd: node master. js), он возвращает следующую ошибку 3 раза:

SyntaxError: Invalid or unexpected token
    at wrapSafe (internal/modules/cjs/loader.js:1070:16)
    at Module._compile (internal/modules/cjs/loader.js:1120:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)
    at internal/main/run_main_module.js:18:47

stderr: C:\Users\thomas\Desktop\testing\support.js:1
��c

И я абсолютно не знаю, почему.

Решение:

У меня был порядок байтов Отметьте в моей поддержке. js файл, как указано символами вопросительного знака (�) в сообщении об ошибке.

Вы можете проверить свои собственные файлы на предмет порядка следования байтов со следующим инструментом

...