#javascript #node.js #npm #exec #child-process
#javascript #node.js #npm #exec #дочерний процесс
Вопрос:
Я сталкиваюсь с некоторым странным поведением при запуске npm pack
с использованием child_process.exec
метода.
const { exec } = require('child_process');
function execCommand( command ) {
exec(
command,
( err, stdout, stderr ) => {
if ( err != null ) {
throw err;
}
console.log( 'stdout -> ', stdout );
console.log( 'stderr -> ', stderr );
}
);
}
function packProject( projectName ) {
console.log('Packing Project');
const distDir = `dist/${projectName}`;
execCommand('cd "' distDir '" amp;amp; npm pack', {
encoding: 'utf8'
});
}
packProject('test-app')
Он выполняет обе команды, как и ожидалось, но затем не завершает процесс после запуска пакета npm.
Packing Project
stdout ->
stderr ->
stdout ->
stderr ->
stdout ->
stderr ->
Я не получаю никаких ошибок или предупреждений во время процесса. Только после нажатия Ctrl C. Но я полагаю, это только потому, что процесс был завершен вручную.
^Cnpm ERR! code ELIFECYCLE
npm ERR! errno 3221225786