call method

Future<void> call(
  1. List<String> args
)

Implementation

Future<void> call(List<String> args) async {
  final result = await Process.run(
    'xmake',
    args,
    workingDirectory: projectRoot,
    // 1. 文本模式显示不了颜色
    // 2. 报错的时候,显示的颜色只是红色
    // 所以禁止颜色输出
    environment: {...Platform.environment, 'XMAKE_COLORTERM': 'nocolor'},
  );
  logger.info("""
$projectRoot>xmake ${args.join(' ')}
${result.stdout}
""");
  if (result.exitCode != 0) {
    logger.severe(result.stderr);
    throw ProcessException(
      'xmake',
      args,
      result.stderr.toString(),
      result.exitCode,
    );
  }
}