2016-07-05 107 views
1

嘗試讓Google App Engine在本地運行後,我認爲最好在此問一個問題,並自己回答。我相信你們中有些人可能會遇到這個問題。Google App Engine - 運行dev_appserver.py時出錯 - 沒有名爲appengine.api的模塊

在安裝了Python的GAE SDK之後,我試着運行該教程。我從GitHub克隆了他們的'Hello World'應用程序,並嘗試使用dev_appserver.py在本地運行它。我不斷收到一條錯誤消息,說「沒有名爲appengine.api的模塊」

我使用TensorFlow和Google開發的一些軟件包,並找到了解決此問題的方法。我會在下面回答。

回答

1

發生在我身上的是由Google開發的一些庫已經添加到我的PYTHONPATH中。所以,當dev_appserver.py試圖執行以下行,

from google.appengine.api import appinfo 

它拋出一個錯誤說「導入錯誤:沒有模塊名爲appengine.api」,因爲它已經在尋找一個不同的谷歌模塊。在我的情況下,這是由Protobuf造成的。我試圖找出一種方法來保持Protobuf,但時間到了我,我不想浪費更多的時間。您可以運行

pip list 

並查看您是否已安裝此模塊。我所做的,然後使用

sudo pip uninstall protobuf 

這將卸載已添加軟件包到PYTHONPATH,即

/usr/local/lib/python2.7/site-packages/google/ 

它是創造這一問題的谷歌路徑卸載它。現在,爲了安全起見,如果您運行

export PYTHONPATH="$PYTHONPATH:/usr/local/google_appengine" 

應該採取dev_appserver.py進口模塊的關心和它應該運行。

請評論,或讓我知道如果你找出一個新的方式做到這一點。

相關問題