2013-09-26 37 views
1

我想在谷歌的應用引擎上使用buildout運行金字塔應用程序。我跟着這個鏈接gae_buildout並在運行buildout時遇到了問題。儘管seetuptools安裝在虛擬環境中,但它顯示「setuptools not found error」。我嘗試了幾項工作,沒有任何結果,對此有何看法?金字塔谷歌的App引擎使用buildout導致setuptools找不到錯誤

找到下面的錯誤跟蹤。我正在使用金字塔1.4版本。

An internal error occurred due to a bug in either zc.buildout or in a 
recipe being used: 
Traceback (most recent call last): 
    File "c:\myenv\newproject\eggs\zc.buildout-2.2.1-py2.7.egg\zc\buildout\buildou 
t.py", line 1942, in main 
    getattr(buildout, command)(args) 
    File "c:\myenv\newproject\eggs\zc.buildout-2.2.1-py2.7.egg\zc\buildout\buildou 
t.py", line 622, in install 
    installed_files = self[part]._call(recipe.install) 
    File "c:\myenv\newproject\eggs\zc.buildout-2.2.1-py2.7.egg\zc\buildout\buildou 
t.py", line 1366, in _call 
    return f() 
    File "c:\myenv\newproject\eggs\rod.recipe.appengine-2.0.2-py2.7.egg\rod\recipe 
\appengine\__init__.py", line 377, in install 
    self.copy_packages(ws, temp_dir) 
    File "c:\myenv\newproject\eggs\rod.recipe.appengine-2.0.2-py2.7.egg\rod\recipe 
\appengine\__init__.py", line 284, in copy_packages 
    self.write_pkg_resources(ws, lib) 
    File "c:\myenv\newproject\eggs\rod.recipe.appengine-2.0.2-py2.7.egg\rod\recipe 
\appengine\__init__.py", line 267, in write_pkg_resources 
    assert len(setuptools_eggs) == 1, "setuptools not found" 
AssertionError: setuptools not found 
+0

爲什麼不直接在gae_buildout問題跟蹤器上打開問題? –

+0

這不是爲了建立一個**開發環境嗎?我不認爲buildout支持所有**上的應用引擎**。 –

+0

構建配方適用於appengine - 構建開發環境。我會解決這個問題。您可以將setup_tools添加到buildout.cfg。過去我使用過rod.recipe.appengine,但我沒有使用過gae_buildout。 –

回答

0

得到了相同的(Ubuntu的12.04),最後通過改變AE-SDK版本從buildout.cfg

打開buildout.cfg解決的問題1.8.0和更改線路:

ae-sdk-version=1.7.5 

到:

ae-sdk-version=1.8.0 

...或者最新一個從here。現在似乎是1.8.5,但1.8.0爲我工作。

問題實際上是因爲PyPI未提供pyramid_appengine的最後一個版本。它的服務0.8.1,應該是(最新的)0.8.2-a2。你可以從這裏下載並安裝你的virtualenv最新版本的壓縮包:https://pypi.python.org/pypi/pyramid_appengine/

+0

我試着改變版本和應用上面給出的補丁,但我得到以下錯誤'\ appengine \ __ init__.py「,第301行,在copy_packages 引發KeyError,'% s:找不到包。' %p KeyError:'mako:package not found.'對此有任何想法??提前致謝 – Rajan

+0

嘗試下載最新的pyramid_appengine模板:'$ myenv/bin/pip install pyramid_appengine == 0.8.2-a2'。你不應該需要AE-SDK版本的調整 –

+0

我正在使用pyramid_appengine版本0.8.2-a2,金字塔版本1.4,setuptools版本1.1.6和是否使用pyramid_appengine最新版本GAE自動切換到版本1.8.0,但我得到了上述錯誤。在github中引發了同樣的問題(https://github.com/twillis/pyramid_appengine/issues/28#issuecomment-25567428)。我正在嘗試這些步驟是由Tom Willis提供的,並且一旦解決就會讓它知道。非常感謝。 – Rajan

0

所以這裏有另一種解決方案。

似乎rod.recipe.appengine不能用於系統的setuptools版本,並且不會下載該buildout中的最新版本。所以解決方案是強制下載rod.recipe.appengine喜歡的setuptools的新版本。

編輯versions.cfg文件(應出現剛剛[版本]標籤),並添加以下行:

[versions] 
setuptools = 1.1.7 

(其它舊版本的工作,以及,我成功地與0.9.8測試)

現在似乎工作更容易,而不需要提到的補丁(謝謝湯姆),更難以更新。

0

這也發生在我身上。

我開始看代碼,發現它明確地尋找setuptools的一個蛋安裝,並且沒有安裝它的地方是由於某種原因的雞蛋。

我決定,我會去從我的站點包刪除,並重新運行工具下載它們,只有在我的虛擬ENV殺死副本後,並重新運行引導和擴建,它得到了雞蛋和一切開始正常工作。

+0

順便說一下,我最終還是做了Enric Mieza的建議,修復了無法找到該zip文件的其他問題。我猜他們不贊成舊版本,並用一個虛擬zip文件替換它。 – johnb003

相關問題