2016-04-14 2 views
0

Я Запасовка ошибка при использовании мицелия в Node.js 4.4.4Ошибка узла: незаконный или отсутствующий аргумент для командной строки. переключатель

Node error: illegal or missing argument for command line flat. switch

Вот мой код:

var bat = require.resolve('../src/util/bs/build.bat'); 
    var profile = require.resolve('../profiles/profile.js'); 
    var profileStr = '--profile' + ' ' + profile; 
    var ls = spawn(bat, [profileStr]); 

    ls.stdout.on('data', function (data) { 
     console.log('stdout: ' + data); 
    }); 

    ls.stderr.on('data', function (data) { 
     console.log('stderr: ' + data); 
    }); 

    ls.on('exit', function (code) { 
     console.log('child process exited with code ' + code); 
    }); 

.bat запустите файл должным образом при вызове из командной строки, как:

"C:\Projects\xxx\src\util\bs\build.bat --profile C:\Projects\xxx\profiles\app.profile.js" 

ответ

0

Мне удалось решить эту проблему, передав аргументы в .bat, используя массив.

Пример:

var bat = require.resolve('../src/util/bs/build.bat'); 
var profile = require.resolve('../profiles/profile.js'); 

var ls = spawn(bat, ['--profile', profile]); 

ls.stdout.on('data', function (data) { 
    console.log('stdout: ' + data); 
}); 

ls.stderr.on('data', function (data) { 
    console.log('stderr: ' + data); 
}); 

ls.on('exit', function (code) { 
    console.log('child process exited with code ' + code); 
}); 
Смежные вопросы