diff --git a/packages/platform-android/package.json b/packages/platform-android/package.json index a38531993..e7f8de6b7 100644 --- a/packages/platform-android/package.json +++ b/packages/platform-android/package.json @@ -6,6 +6,7 @@ "dependencies": { "@react-native-community/cli-tools": "^2.4.1", "chalk": "^2.4.2", + "execa": "^1.0.0", "jetifier": "^1.6.2", "logkitty": "^0.5.0", "slash": "^2.0.0", diff --git a/packages/platform-android/src/commands/runAndroid/index.js b/packages/platform-android/src/commands/runAndroid/index.js index 07c7c641b..c0bb903d1 100644 --- a/packages/platform-android/src/commands/runAndroid/index.js +++ b/packages/platform-android/src/commands/runAndroid/index.js @@ -8,6 +8,7 @@ */ import path from 'path'; +import execa from 'execa'; import {spawnSync, spawn, execFileSync} from 'child_process'; import chalk from 'chalk'; import fs from 'fs'; @@ -48,7 +49,7 @@ export type FlagsT = {| /** * Starts the app on a connected Android emulator or device. */ -function runAndroid(argv: Array, config: ConfigT, args: FlagsT) { +async function runAndroid(argv: Array, config: ConfigT, args: FlagsT) { if (!checkAndroid(args.root)) { logger.error( 'Android project not found. Are you sure this is a React Native project?', @@ -68,7 +69,7 @@ function runAndroid(argv: Array, config: ConfigT, args: FlagsT) { ); try { - execFileSync(require.resolve('jetifier/bin/jetify'), {stdio: 'inherit'}); + await execa(require.resolve('jetifier/bin/jetify'), {stdio: 'inherit'}); } catch (error) { throw new CLIError('Failed to run jetifier.', error); }