Google App Engine dev_appserver 找不到 PIL(我已经安装了)

3 投票
1 回答
1392 浏览
提问于 2025-04-15 22:36

我最近在我的Mac上升级了Google App Engine的启动工具,系统是OSX 10.5.8,结果我的一些处理图片的项目在本地就不工作了。

这似乎和我第一次在本地使用GAE处理图片时遇到的问题一样,那时候我还没有安装PIL。现在我遇到的错误是:

SystemError: Parent module 'PIL' not loaded

我已经安装了PIL。当我正常运行python时,可以正常访问和使用它。我还检查了dev_appserver.py是否在运行相同版本的Python。如果我打开解释器并输入sys.version,我得到的结果是:

2.5 (r25:51918, Sep 19 2006, 08:49:13)
[GCC 4.0.1 (Apple Computer, Inc. build 5341)]

这个结果和我通过dev_appserver运行的项目显示的sys.version是一样的。你们觉得为什么dev_appserver找不到PIL模块呢?我对此已经想了很久。

谢谢!

1 个回答

4

你可能遇到了我在这里提到的问题,具体来说,我觉得……:

你需要找到另一种方法来正确地扩展 Python 的 sys.path。最简单的方法是创建一个名为 PIL.pth 的文件,里面只写一行内容:

/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages

然后把这个 PIL.pth 文件放在所有 Python 进程都能看到的任意目录里;在我的情况下,我使用的是 /Library/Python/2.5/site-packages/ —— 但在全新安装的 Mac OS X 10.5 中,这个目录可能不存在,所以你可能需要使用其他目录。

撰写回答