message: Better error message when jarsigner isn't found
diff: # This source code is licensed under the MIT license found in the
  # LICENSE file in the root directory of this source tree.
  +from __future__ import print_function
  +
  +import errno
  import glob
  import shutil
  import subprocess
  @@ -39,6 +42,7 @@ def remove_temp_dirs():
  def sign_apk(keystore, keypass, keyalias, apk):
  + try:
  subprocess.check_call(
  [
  'jarsigner', '-sigalg', 'SHA1withRSA', '-digestalg', 'SHA1',
  @@ -46,6 +50,18 @@ def sign_apk(keystore, keypass, keyalias, apk):
  ],
  stdout=sys.stderr
  )
  + except OSError as e:
  + # Future migration note: In Python 3, this will throw a
  + # FileNotFoundError instead. We could also use shutil.which().
  + if e.errno == errno.ENOENT:
  + FAIL_COLOR = '\033[91m'
  + END_COLOR = '\033[0m'
  + print(
  + ('{}Failed to execute jarsigner: please check if jarsigner '
  + 'is on your $PATH.{}').format(FAIL_COLOR, END_COLOR),
  + file=sys.stderr,
  + )
  + raise
  def remove_comments_from_line(l):
  