2

appengine に go アプリをデプロイしようとしていて、次のチュートリアルに従っています: https://developers.google.com/appengine/docs/go/gettingstarted/helloworld?hl=de

しかしdev_appserver.py gopath/myapp/、この奇妙なエラーメッセージが表示されます:

C:\Users\praktikant\Desktop\google_appengine>dev_appserver.py gopath/myapp/
INFO     2013-07-16 10:43:17,565 sdk_update_checker.py:244] Checking for updates
 to the SDK.
INFO     2013-07-16 10:43:18,779 sdk_update_checker.py:288] This SDK release is
newer than the advertised release.
WARNING  2013-07-16 10:43:18,799 api_server.py:314] Could not initialize images
API; you are likely missing the Python "PIL" module.
INFO     2013-07-16 10:43:18,815 api_server.py:138] Starting API server at: http
://localhost:51413
INFO     2013-07-16 10:43:18,825 api_server.py:509] Applying all pending transac
tions and saving the datastore
INFO     2013-07-16 10:43:18,828 api_server.py:512] Saving search indexes
Traceback (most recent call last):
  File "C:\Users\praktikant\Desktop\google_appengine\dev_appserver.py", line 182
, in <module>
    _run_file(__file__, globals())
  File "C:\Users\praktikant\Desktop\google_appengine\dev_appserver.py", line 178
, in _run_file
    execfile(script_path, globals_)
  File "C:\Users\praktikant\Desktop\google_appengine\google\appengine\tools\deva
ppserver2\devappserver2.py", line 695, in <module>
    main()
  File "C:\Users\praktikant\Desktop\google_appengine\google\appengine\tools\deva
ppserver2\devappserver2.py", line 688, in main
    dev_server.start(options)
  File "C:\Users\praktikant\Desktop\google_appengine\google\appengine\tools\deva
ppserver2\devappserver2.py", line 663, in start
    self._dispatcher.start(apis.port, request_data)
  File "C:\Users\praktikant\Desktop\google_appengine\google\appengine\tools\deva
ppserver2\dispatcher.py", line 161, in start
    servr.start()
  File "C:\Users\praktikant\Desktop\google_appengine\google\appengine\tools\deva
ppserver2\server.py", line 936, in start
    self._watcher.start()
  File "C:\Users\praktikant\Desktop\google_appengine\google\appengine\tools\deva
ppserver2\file_watcher.py", line 37, in start
    watcher.start()
  File "C:\Users\praktikant\Desktop\google_appengine\google\appengine\tools\deva
ppserver2\win32_file_watcher.py", line 74, in start
    raise ctypes.WinError()
WindowsError: [Error 6] The handle is invalid

私のシステムは Windows 7、64 ビットです。go バージョン 1.8.1 64 ビット用の google-appengine SDK をダウンロードして解凍しました。GOPATH および GOROOT 環境変数が作成され、解凍された sdk ディレクトリ内のフォルダーに設定されます。私の Python は 2.7.5 64 ビットです。

エラー メッセージは Python に関連しているように聞こえ、stackoverflow で次の質問を見つけました: Windows Error in Google App Engine

stackoverflow に関する一般的なコンセンサスは、gae バージョン 1.7.6 にはいくつかのバグがあり、受け入れられた回答では 1.7.5 にダウングレードすることを推奨しています。

しかし、現在のバージョンは 1.8.1 です。これはまだ修正されていないバグですか、それとも設定の問題ですか? 問題が構成に関連している場合、どうすれば修正できますか?

更新: 更新チェッカーは、使用している SDK リリースが宣伝されているバージョンよりも新しいという情報を出力します。ここから SDK をダウンロードしました: https://developers.google.com/appengine/downloads#Google_App_Engine_SDK_for_Go

Google サーバーからのバージョンが宣伝されているバージョンよりも新しいのはなぜか、私も困惑しています。

4

3 に答える 3

3

必要なフォルダーbinpkg、および最も重要なsrcフォルダーを GOPATH フォルダーに作成したことを確認してください。これは、dev_appserver.py が filewatcher をセットアップしようとしているフォルダーであり、存在しない場合はこのエラーが発生します。

SDK の gopath フォルダーに GOPATH を設定したとおっしゃいましたが、そのフォルダーはデフォルトで空であるため、これが問題である可能性があると思います。

于 2013-09-07T11:01:35.840 に答える
0

GOPATH と GOROOT が環境変数であることを考えると、dev_appserver.py gopath/myapp/ 実際にはそうではありませんdev_appserver.py "%GOPATH%/myapp/"か?

于 2013-07-16T11:19:34.340 に答える
0

うまくいかない場合は、解決策を見つけます

ファイル内

C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\devappserver2\python\sandbox.py

追加:

_WHITE_LIST_C_MODULES = [ 'msvcrt', #ローカル ホストの互換性のために私が追加 '_ctypes', 'ctypes', #end

これは私にとってctypesの問題を修正します

于 2017-01-10T18:07:18.560 に答える