запустить пакет npm, используя child_process.exec - PullRequest
1 голос
/ 17 апреля 2019

Я сталкиваюсь со странным поведением при запуске 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+'" && npm pack', {
    encoding: 'utf8'
  });
}

packProject('test-app')

Он выполняет обе команды, как и ожидалось, но затем не завершает процесс после запускаnpm pack.

Packing Project
stdout ->
stderr ->
stdout ->
stderr ->
stdout ->
stderr ->

Я не получаю ни ошибок, ни предупреждений во время процесса.Только после нажатия Ctrl + C.Но я полагаю, это только потому, что процесс был прекращен вручную.

^Cnpm ERR! code ELIFECYCLE
npm ERR! errno 3221225786
...