我正在使用 Google App Engine,但无法从其界面启动程序。GAE 中的日志表明它正在尝试使用 Python 2.6,但它需要 2.7,因此无法运行。
我之前使用过 Python 2.7,当我python
从终端中的任何路径输入时,都会出现 2.7 的横幅。
但是,如果我调用,/usr/bin/python
我会得到 2.6 横幅。
即使我登录/usr/bin
并输入,python
我也会收到 2.7 横幅。我的环境变量提到了很多关于 2.7 的内容。
我尝试将 GAE 中 python 的路径从 更改为 ,/usr/bin/python
但python
没有成功。
我错过了什么?
编辑:
似乎用户相关路径被系统范围路径取代(猜测)。仅包含
/etc/path
,,,,/usr/bin
(按顺序) /bin
/usr/sbin
/sbin
/usr/local/bin
我的路径下env
包含更多随着时间的推移而添加的内容,但似乎最先被查看的是/etc/path
,它优先于/usr/bin/env
编辑:
问题的根源原来是 OSX 依赖过时的 Python 库,而这些库的安装位置与新 Python 安装程序的位置不同。在 OSX Snow Leopard 上,使用旧的 Python 2.5 和 2.6 很容易搞乱您的系统。我最终链接到/usr/bin/python
了/Library/Frameworks/Python.framework/Versions/2.7/bin/python
。到目前为止,这种方法有效,但我可以看到这种方法会搞乱一些东西,因此在使用它之前请先阅读更多内容。
答案1
在 Linux 中我们有一个叫做替代系统处理这些情况。我会检查 python 二进制文件是否是另一个 python 的符号链接,如果是,则将其更改为我想要的。
还要检查您的 PATH 是否包含“。”,如果包含,请尝试将其删除。
答案2
我遇到了类似的问题,这是因为在PATH
安装 Python 之前,我的变量中有一个 Cygwin,python.exe
文件位于其中。
通常,检查是否可以在“实际” Python 安装目录之前的变量python.exe
中列出的目录中找到文件。PATH