gpt4 book ai didi

python - ImportError 在 Ubuntu 上运行谷歌的 python 应用程序引擎

转载 作者:太空狗 更新时间:2023-10-29 11:48:16 25 4
gpt4 key购买 nike

我正在尝试使用 Google 的 AppEngine 自学 Python ,我无法让开发服务器运行。我收到此错误:

Traceback (most recent call last):
File "/opt/google_appengine/google_appengine_1.2.7/dev_appserver.py", line 60, in run_file(file, globals()) File "/opt/google_appengine/google_appengine_1.2.7/dev_appserver.py", line 57, in run_file execfile(script_path, globals_) File "/opt/google_appengine/google_appengine_1.2.7/google/appengine/tools/dev_appserver_main.py", line 65, in from google.appengine.tools import os_compat ImportError: cannot import name os_compat

Ubuntu 9.10 带有 python2.6(没用),我安装了 python2.5(没用),并尝试用 python dev_appserver.py helloWorld 运行它(没用't work) 以及在将第一行编辑为之后运行 dev_appserver.py:

#!/usr/bin/env python2.5

我似乎无法在网上找到有关此错误的任何信息。我发现的唯一问题是关于使用 python 2.5,我想我已经解决了。

Kyle 建议我需要设置 PYTHONPATH 变量。运行后

export PYTHONPATH=/opt/google_appengine/google_appengine_1.2.7

我在尝试运行 dev_appserver.py 时仍然遇到同样的错误。我把 PYTHONPATH 设置错了吗?或者,如何卸载 Protocol Buffer python 项目?我对 Ubuntu One 没有用,已经卸载了它。

最佳答案

问题似乎是 Karmic Koala 9.10(最新版本的 Ubuntu)附带了 Ubuntu One,这是一款依赖于 Google protocol buffers 的 python 应用程序。图书馆。 python-protobuf包在/usr/lib/pymodules/python2.6中提供了google.protobuf包。

不幸的是,AppEngine SDK 包含另一个名为 google.appengine 的包。所以在你的代码中的某个地方,正在导入 google 包,并且首先在 PYTHONPATH 上找到包含 protobuf 的包。 Python 缓存它在 sys.modules 中找到的第一个包,因此绝不会导入 SDK 中的第二个 google 包。

您可以将 google AppEngine SDK 移到 PYTHONPATH 的前面。这应该确保 Python 找到 google.appengine 包而不是 python-protobuf 提供的包。

PYTHONPATH=/opt/google_appengine/google_appengine_1.2.7 \
python dev_appserver.py helloWorld

这是一个错误,应该报告给 AppEngine SDK project .

更新:我已经提交了 bug against the AppEngine API .

关于python - ImportError 在 Ubuntu 上运行谷歌的 python 应用程序引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1705831/

25 4 0
文章推荐: c - 如何使用 C 在 Linux 中获取文件的更多 vfat 属性?
文章推荐: html - 如何有条件地呈现纯 HTML 元素,如
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com