在 Mac OS X 10.6 上使用带有 Python 2.7 的 Google App Engine SDK
Posted
技术标签:
【中文标题】在 Mac OS X 10.6 上使用带有 Python 2.7 的 Google App Engine SDK【英文标题】:Using Google App Engine SDK with Python 2.7 on Mac OS X 10.6 【发布时间】:2011-12-28 23:40:57 【问题描述】:我需要在安装了 Python 2.6 的 Mac Snow Leopard 上运行 Python 2.7。根据this answer,从 Python.org 运行 Python 2.7 mpkg 安装程序应该可以让我到达那里。
我需要这样做的原因是我正在尝试为 Python 2.7 运行时运行 Google App Engine SDK。
安装 Python 2.7 后,我的 GAE 服务器日志中仍然收到以下警告:
警告:您使用的 Python 运行时 (2.6) 比 生产运行时环境 (2.7)。
我还需要做什么才能让 GAE SDK 识别新的 Python 版本?
编辑 2:
跑步:
$ sudo find / -name python2.7
我明白了:
/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7
/usr/local/bin/python2.7
根据我进入 GoogleAppLauncher -> Preferences 的答案并将 Python 路径设置为其中的每一个,并且每次我得到完全相同的错误。
使用以下标志运行 dev_appserver: --admin_console_server= --port=8081 Python 命令:/Library/Frameworks/Python.framework/Versions/2.7 2011-11-14 16:12:24.726 GoogleAppEngineLauncher[57590:203] *** NSTask:任务 为路径“/Library/Frameworks/Python.framework/Versions/2.7”创建 失败:22,“无效参数”。终止临时进程。
另一个奇怪的事情是,无论我插入哪一个,它总是试图解决相同的路径;它总是恢复为/Library/Frameworks/Python.framework/Versions/2.7
编辑 3:
好的,在prefs字段中反复输入路径后,我终于把它清除了,不知何故它现在指向了正确的地方:
Running dev_appserver with the following flags:
--admin_console_server= --port=8081
Python command: /usr/local/bin/python2.7
【问题讨论】:
这篇文章提供了关于这个主题的教程lowcoupling.com/post/51985632058/… 【参考方案1】:打开 GAE 启动器首选项并将 Python 路径 选项设置为新安装的 Python 2.7,在您的情况下为 /usr/local/bin/python2.7。
【讨论】:
@systempuntout-我刚刚尝试过,但没有做对-你能看到我的答案的编辑吗? 在你的shell上输入whereis python2.7
,结果应该会给你python2.7 bin的路径。
使用 /usr/local/bin/python2.7 并回车确认,重新打开首选项并检查是否存储正确。
握住手机——我刚刚清除了 Python 路径,突然间它似乎指向正确了......
@systempuntout - 感谢您的支持 - 非常感谢【参考方案2】:
遇到这个问题,正在寻找有关 Mac、GAE 和 Python 的相同困境的解决方案。
我想就使用 GAE 首选项设置 Python 路径发表评论。我注意到您提到您在使用首选项设置 Python 路径时遇到问题。我发现编辑路径后,您必须按Enter。否则,路径不会更新。这可能解释了您在尝试编辑路径字段时提到的奇怪之处。
【讨论】:
如果没有这个,我会绕着圈子转几个小时。谢谢! 你会想象一个选择按钮或其他东西。尤达曼【参考方案3】:我从 macports 安装了 python 2.7.x。我看到了:
$ python --version
Python 2.7.2
$ which python
/opt/local/bin/python
因此,在 GoogleAppEngineLauncher.app 的首选项中,我将 python 路径设置为:
/opt/local/bin/python
在控制台日志中,我看到:
*** Running dev_appserver with the following flags:
--admin_console_server= --port=8081
Python command: /opt/local/bin/python
我仍然看到一些关于库的错误,尤其是 Can't open zipfile...setuptools
,但至少简单的东西似乎可以工作。
祝你好运!
【讨论】:
【参考方案4】:我不确定它是否有帮助,但我没有使用 Python 中的二进制文件,而是使用 MacPorts http://www.macports.org/ 并安装了 Python 2.7 运行时:
sudo port install python27
【讨论】:
@danielrsmith- 谢谢,我会看看,但仍然不确定如何让 GAE 引擎识别新版本...以上是关于在 Mac OS X 10.6 上使用带有 Python 2.7 的 Google App Engine SDK的主要内容,如果未能解决你的问题,请参考以下文章
在 10.6 上测试 Mac OS X 10.7 特定代码时出现“未找到符号”崩溃
Mac OS X 10.6(雪豹)上的 Qt 4.4 视觉伪影是不是有解决方法
在 10.6 (Snow Leopard) 之后以编程方式设置 Mac OS X 音量