Google-app-engineチュートリアルを使用して、次のエラースタックメッセージが表示されました。
Traceback (most recent call last):
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 239, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 298, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "C:\Program Files (x86)\Google\google_appengine\google\appengine\runtime\wsgi.py", line 84, in LoadObject
obj = __import__(path[0])
File "D:\Dev\SandBoxes\web\omaha\omaha.py", line 4, in <module>
import jinja2
ImportError: No module named jinja2
App.yamlのライブラリで宣言したにもかかわらず:
application: ***
version: 1
runtime: python27
api_version: 1
threadsafe: true
libraries:
- name: jinja2
version: latest
- name: webapp2
version: latest
handlers:
- url: /css
static_dir: css
- url: /js
static_dir: js
- url: /img
static_dir: img
- url: /.*
script: omaha.application
誰かが同様の問題を抱えていますか?
AELでアプリケーションを再起動する必要があります。
新しいライブラリの呼び出しを考慮するには、Google App Engine Launcherのアプリケーションを再起動する必要があります。私は、他のすべての変更がサーバーの実際の再起動を必要としないという事実に誤解されていました。
Jinjaをローカルで使用するには、ローカルにインストールする必要があります
easy_install Jinja2
または
pip install Jinja2
次の行をapp.yamlに追加していない可能性があります。
- name: jinja2
version: latest
これらのコマンドを使用して、Python 3:
Sudo apt-get install python3-pip
Sudo pip3 install Jinja2
ライブラリで宣言されていても、必ずしも開発アプリサーバーがappengine sdk内でライブラリを見つけることができるとは限りません。
チュートリアルを実行しているので、Googleアプリエンジンランチャーからアプリケーションを実行していると想定しています。 laucher内で[編集] >> [設定]に進み、PythonパスとSDKパスを設定します。