要安装依赖项,appengine-python-flask-skeleton docs建议运行此命令:
pip install -r requirements.txt -t lib
这很简单。
现在说我要添加Requests package。
理想情况下,我只需将其添加到requirements.txt
文件中:
# This requirements file lists all third-party dependencies for this project.
#
# Run 'pip install -r requirements.txt -t lib/' to install these dependencies
# in `lib/` subdirectory.
#
# Note: The `lib` directory is added to `sys.path` by `appengine_config.py`.
Flask==0.10
requests
然后重新运行命令:
pip install -r requirements.txt -t lib
但是,对于点数备注的this Github issue,pip对于Google推荐的-T
选项并非幂等。将重新添加现有的烧瓶包,这将导致运行devapp时出现以下错误
ImportError: cannot import name exceptions
我如何才能最好地解决这个问题?
答案 0 :(得分:1)
如上所述,更新点数为许多人解决了这个问题,但是如果使用virtualenv是一个选项,那么我觉得你可以解决所有这些问题。符号链接ch[i]
到/path/to/virtualenv's/sitepackages/
,并始终保持最新的lib/
文件。这种方式没有重复包,并且不必手动安装依赖项。另请参阅https://stackoverflow.com/a/30447848/2295256
答案 1 :(得分:0)
升级到最新版本的pip解决了我的问题(该问题已经关闭):
pip install -U pip
否则,如该线程所述,您可以随时清除lib
目录并从头开始重新安装。一条警告提示:如果您手动将其他软件包添加到lib
中未跟踪的requirements.txt
目录中,则会丢失这些软件包并且必须手动重新安装。