2017-10-05 135 views
2

我努力让自己在Heroku的OpenCV的工作OpenCV的工作,但我已经在服务器的日志文件中的以下错误:不能让在Heroku

2017-10-05T23:17:08.145096+00:00 heroku[web.1]: State changed from crashed to starting 
2017-10-05T23:17:19.477843+00:00 heroku[web.1]: Starting process with command `python Main.py` 
2017-10-05T23:17:23.469550+00:00 heroku[web.1]: State changed from starting to crashed 
2017-10-05T23:17:23.458477+00:00 heroku[web.1]: Process exited with status 1 
2017-10-05T23:17:23.268234+00:00 app[web.1]: Traceback (most recent call last): 
2017-10-05T23:17:23.268249+00:00 app[web.1]: File "Main.py", line 3, in <module> 
2017-10-05T23:17:23.268434+00:00 app[web.1]:  from MostDominantColor import get_color 
2017-10-05T23:17:23.268541+00:00 app[web.1]: File "/app/utils.py", line 3, in <module> 
2017-10-05T23:17:23.268435+00:00 app[web.1]: File "/app/MostDominantColor.py", line 2, in <module> 
2017-10-05T23:17:23.268538+00:00 app[web.1]:  import utils 
2017-10-05T23:17:23.268648+00:00 app[web.1]:  import cv2 
2017-10-05T23:17:23.268790+00:00 app[web.1]: ImportError: libSM.so.6: cannot open shared object file: No such file or directory 
2017-10-05T23:17:23.268663+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/cv2/__init__.py", line 9, in <module> 
2017-10-05T23:17:23.268776+00:00 app[web.1]:  from .cv2 import * 

在__init__.py文件的第9行有一个一段代码,对于IDE的自动完成时才有用:

8 # make IDE's (PyCharm) autocompletion happy 
9 from .cv2 import * 

我明白,在我的代码导入CV2时,这条线是造成一个问题,就是有没有办法从服务器上删除线(知道CV2库在服务器端用pip下载,所以我不能通过git将这样的编辑推送到Heroku)

欢迎任何建议!

python : 3.6.2 
opencv-python==3.3.0.10 

回答

0

这是一个依赖问题,我需要的是安装这样的:

apt-get install libsm6 libxrender1 libfontconfig1 

PS:Heroku的免费账户不包括SSH联接,所以我切换到谷歌云Platfom和它的作品。