2012-01-04 1 views
0

Я хочу Скомпилируйте игру андроид, но ...Subprocess.py ошибки

У меня есть проблема с Subprocess.py

Я получаю следующее сообщение об ошибке:

File "D:\Documents and Settings\Kiraler\Pulpit\renpy-apk-6.13.7.1\build.py", line 321, in <module> 
make_package<args> 
File D:\Documents and Settings\Kiraler\Pulpit\renpy-apk-6.13.7.1\build.py", line 201, in make_package 
subprocess.call<[ANDROID, "update", "project", "-p", '.', '-t', android-8] 

File "D:\Python27\lib\subprocess.py", line 493, in call 
return Popen<*popenargs, **kwargs>.wait<> 

File "D:\Python27\lib\subprocess.py", line 679, in __init__ 
errread, errwrite> 

File "D:\Python27\lib\subprocess.py", line 893, in _execute_child 
startupinfo> 

WindowsError: [Error 2] The system cannot find the file specified 

Модуль:

# Update the project to a recent version. 
subprocess.call([ANDROID, "update", "project", "-p", '.', '-t', 'android-8']) 

shutil.rmtree("assets") 

if args.assets: 
    shutil.copytree(args.assets, "assets") 

else: 
    os.mkdir("assets") 

if renpy: 
    shutil.copytree("engine-assets/common", "assets/common") 

Может кто-нибудь мне помочь?

+0

попробуйте использовать 'subprocess.call ([ANDROID," update "," project "," -p ", '.', '-t', 'android-8'], shell = True)' – RanRag

ответ

0

Я бы сказал, что проблема в том, что переменная ANDROID в коде не является полным именем пути к двоичному файлу, который вы хотите использовать.

Следовательно, комментарий, который предлагает использовать shell=True, выглядит как подходящий, если у вас есть соответствующая конфигурация переменной PATH так, чтобы можно было найти ANDROID.

Если это не так, то вы можете:

  • Обеспечить полный путь в ANDROID переменной
  • Используйте параметр env при вызове в subprocess.Popen, чтобы обеспечить собственную настроенную переменную PATH окружения подпроцесса. Для получения дополнительной информации, , пожалуйста, посмотрите на documentation.
Смежные вопросы