从需求中使用pip install丢失分发规范错误

Dar*_*ech 13 django pip virtualenv

我刚刚创建了一个新的virtualenv,我想运行我的pip install.但是,我收到此错误:

raise ValueError("Missing distribution spec", line)
ValueError: ('Missing distribution spec', '/path/to/dir/requirements.txt')
Run Code Online (Sandbox Code Playgroud)

我的requirements.txt:

Django==1.3
Jinja2==2.6
MySQL-python==1.2.3
PIL==1.1.7
Pygments==1.5
Sphinx==1.1.3
Werkzeug==0.8.3
django-debug-toolbar==0.9.4
django-excel-response==1.0
django-extensions==0.8
docutils==0.9.1
ipython==0.12
wsgiref==0.1.2
Run Code Online (Sandbox Code Playgroud)

出了什么问题?

Vin*_*lli 18

你一定做错了.类似于:pip install path/to/requirements.txt,但必须使用-r参数传递需求文件:

pip install -r path/to/requirements.txt

拥抱.

  • 哈!我忘记了`-r`标志.而不是第一次......虽然有一条错误消息指出这一点仍然会很好.谢谢. (4认同)

Jus*_*ker 15

如果有人和我一样在同一个版本中运行,我想完成答案:我在Windows环境中运行所有内容(Windows 7).在powershell下,我跑了

pip freeze > requirements.txt
Run Code Online (Sandbox Code Playgroud)

当我在一个新的virtualenv上测试时,我遇到了与上面相同的错误.问题是编码问题(呃):确保requirements.txt文件是用UTF-8(没有BOM)编写的.Notepad ++或sublime文本可以确保这一点.

希望它能帮助其他人,因为上面的答案是不够的.

  • 谢谢 - 看起来像powershell将requirements.txt保存为unicode (3认同)