2012-11-16 82 views
1

我在将Django应用程序推送到Heroku时出现问题。安装PIL似乎有错误。我传统上遇到PIL b/c问题,我在Windows上,所以使用pip install或easy_install无法正常工作,因为找不到“vcvarsall.bat”安装PIL依赖于虚拟环境的Heroku错误

因此,作为一种快速解决方案,我去了this site并跑了安装PIL的.exe版本。我只好让PIL问题到我的虚拟环境,从而创建虚拟环境时,我用这个

virtualenv --system-site-packages venv 

现在我使用

git push heroku master 

和我得到这个回

Downloading/unpacking PIL==1.1.7 (from -r requirements.txt) 
Could not find any downloads that satisfy the requirement PIL==1.1.7 (line 2)) 
... 
Heroku push rejected, failed to compile Python/Django app 
! [remote rejected] m aster -> master (pre-receive hook declined) 
error: failed to push some refs to '[email protected]' 

我怎样才能过去PIL?

回答

4

我记得有这个问题与PIP找到PIL。尝试在requirements.txt使用该行,而不是PIL = 1.1.7

http://effbot.org/media/downloads/Imaging-1.1.7.tar.gz

此外,你可以随时从requirements.txt移除任何模块,并与你的Django根模块代码的副本替换它。

例如,使用PIL的东西,您可以使用该链接下载代码,解压缩代码,并将PIL粘贴到您的Django项目根目录下的Imaging-1.1.7文件夹中。会一直工作。

一般而言,如果可能,您希望避免这种情况,因为它会增加代码部署的大小,但您可以这样做。它会帮助你解决这些问题,所以你至少可以继续工作。

实际上可能最好包含代码而不是仅使用requirements.txt的一种情况是,当您使用的文档不完整的库或模块工作时,如果您想立即快速访问编辑器内部的源代码。可能不会在生产服务器上执行,但对于可能非常方便的dev。

+0

谢谢。对django-storage和pypm有同样的问题 - 有什么想法? –

+0

和pywin32?被requirements.txt摧毁 –

+0

编辑我的回答以回应你的问题 –