2013-10-22 23 views
8

我下面的如何設置AppEngineBackend教程本網站https://cloud.google.com/resources/articles/how-to-build-mobile-app-with-app-engine-backend-tutorialappcfg.py命令

我目前的環境上是:

1.Windows 8(64位)。

2.Java 7

3.Eclipse 4.2 ADT(它的日蝕,已預先與ADT從Android網站下載)

我不得不與Java的,無效的AppEngine SDK很多問題,等等,因爲我已經開始本教程。我解決了其中的許多問題,並且已經使用以下命令使用腳本在upload_data.sh文件中將數據上傳到AppEngine數據存儲區:使用以下命令將數據上載到AppEngine數據存儲:

./upload_data.sh places。 CSV將

upload_data.sh的內容是:

/bin/sh的

appcfg.py upload_data

--config_file bulkloader.yaml --url =「HTTP:// localhost:8888/remote_api「--filename $ 1 --kind = $ 2 -e [email protected]

現在問題是Windows不支持.sh文件。該文件還包含諸如appcfg.py,--config_file等命令。爲了運行.sh文件,我下載了Cygwin。然後我安裝了Python33,並將PythonPath環境變量設置爲c:\ python33。當我運行從Cygwin的終端以上命令得到以下:

./upload_data.sh:第2行:appcfg.py:未找到命令

./upload_data.sh:行3:--config_file :找不到命令

./upload_data.sh:4號線:[email protected]:找不到命令

我需要告訴Cygwin的關於我的Python的位置?如果是,那麼該怎麼做?

另外我在安裝Google AppEngine SDK之後安裝了Python和Cygwin。這是否會導致問題?Cygwin和Python應該安裝在AppEngine SDK之前嗎?安裝AppEngine SDK會自動通知Cygwin appcfg.py,等等。?

+0

您是否需要關於此問題的更多幫助? –

回答

1

最簡單的解決方案(在我心中)你的問題是創建具有以下內容的.bat文件:

python appcfg.py upload_data --config_file bulkloader.yaml --url="http://localhost:8888/remote_api" --filename $1 --kind=$2 -e [email protected] 

所以它可能無法工作,我沒有測試它。現在沒有Windows機器。您需要將python.exe的文件夾放入您的PATH環境變量中。

請使用python 2.7而不是python 3.3。我很確定Google App Engine尚不支持任何Python 3.x。

乾杯

+0

現在是否出現以下錯誤:Traceback(最近調用最後一次): 文件「appcfg.py」,第179行,在 DIR_PATH = get_dir_path(os.path.join('lib','ipaddr')) 文件「appcfg.py」,第139行,在get_dir_path中 'directory'%gae_sdk_root) ValueError:GAE_SDK_ROOT'E:\\ android-sdk \\ adt-bundle-windows-x86_64-20130917 \\ eclipse \\ plugins \ \ com.google.appengine.eclipse.sdkbundle_1.8.6 \\ appengine-java-sdk-1.8.6'沒有引用一個有效的SDK目錄 – user2231256

+0

我已經安裝了SDK作爲插件來eclipse – user2231256

5

雖然未列出作爲先決條件,安裝谷歌的App Engine SDK的Python(可在Google's App Engine SDK Download page)使得下,appcfg。py可用於命令行。

在Mac上安裝此SDK期間,安裝將appcfg.py放在PATH上,從而解決「appcfg.py:command not found」錯誤消息。這可能與Windows相似。

此外,刪除發生在--config_file和[email protected]單詞之前的換行符(即「下一行」空格) - 該腳本只需要是一條沒有換行符的連續行(由於到達編輯器的邊緣,該行只應該溢出到下一行)。

3

這是一個簡單的解決方法。不需要創建一個shell或.bat文件。這應該適用於任何人以及任何使用終端或命令提示符的操作系統。本地服務器應該在調試模式下運行,或者換句話說,你可以成功地瀏覽到http://localhost:8888/_ah/admin

  1. 確保您下載並解壓Google App Engine SDK for Python任何位置您的計算機上,因爲appcfg.py文件位於父目錄提取。

  2. 將以下文件「bulkloader.yaml和places.csv」放入步驟1中提取的父文件夾中,即在appcfg.py文件所在的同一目錄中。

  3. 在終端或命令提示符下直接運行以下命令:當出現密碼提示

    python appcfg.py upload_data --config_file bulkloader.yaml --url=http://localhost:8888/remote_api --filename places.csv --kind=Place -e [email protected]

  4. 按回車鍵..享受!。此外,您可能需要等待大約一兩分鐘的時間才能確認數據存儲查看器是否有數據。

0

如果您正在尋找此修訂的原因是在AppEngine上部署錯誤,因爲它指出另一個部署正在進行中,您的應用程序是建立與Maven,回滾簡單的辦法是你的終端指向運行appengine部署的目錄,然後鍵入$appengine:rollback

1

我也在我的Mac上發現了這個錯誤。 Google App Engine的最新版本默認不包含appcfg.py,默認爲$PATH。目錄包括我的mac上的appcfg.py$HOME/google-cloud-sdk/platform/google_appengine/,你可以在你的$PATH中添加這個目錄,它應該可以工作。