Как загрузить и использовать файлы .pyc в Google App Engine? - PullRequest
1 голос
/ 04 февраля 2012

Согласно документации , среда выполнения Python 2.7 GAE больше не ограничивает доступ к байт-коду:

Среда выполнения Python 2.7 больше не ограничивает доступ к байт-коду Python.Библиотеки, которые генерируют или манипулируют байт-кодом (например, библиотека шаблонов jinja2), могут делать это в этой среде выполнения.

Вы можете загружать и использовать .pyc, но не в сочетании с .py файлами.Вы можете загружать zip-файлы, содержащие .py или .pyc файлы (или их комбинации).

Как мне воспользоваться этим?

Часть моего app.yaml *Директива 1019 * имеет следующую строку:

skip_files:
- ^(.*/)?.*\.py[o]
- ^(.*/)?.*\.py

Затем я загрузил свое приложение в Google App Engine.Когда я тестировал его, я получаю ImportError (в логах):

Traceback (most recent call last):
  File "/base/python27_runtime/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 187, in Handle
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "/base/python27_runtime/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 225, in _LoadHandler
    handler = __import__(path[0])
ImportError: No module named main

Я использую опцию threadsafe: true, поэтому мой основной обработчик выглядит так:

handlers:
- url: /.*
  script: main.app

Почему Google App Engine не может обнаружить мой main.pyc файл?Существуют ли какие-либо специальные конфигурации файлового дерева?

...