2012-07-19 35 views
13

Tôi vừa tạo một virtualenv mới mà tôi muốn chạy pip install. Tuy nhiên, tôi nhận được lỗi này:Thiếu thông số lỗi phân phối bằng pip cài đặt từ các yêu cầu

raise ValueError("Missing distribution spec", line) 
ValueError: ('Missing distribution spec', '/path/to/dir/requirements.txt') 

My 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 

gì đang xảy ra vậy?

Trả lời

18

Bạn phải làm điều gì đó sai. Một cái gì đó như: pip install path/to/requirements.txt, nhưng các tập tin yêu cầu phải được thông qua với -r luận:

pip install -r path/to/requirements.txt

Hugs.

+4

ha! Tôi đã quên cờ '-r'. Và không phải là lần đầu tiên ... Nó sẽ vẫn là tốt đẹp để có một thông báo lỗi mà chỉ ra rằng mặc dù. Cảm ơn. –

+0

Tôi đã có một ~ ở dưới cùng của tôi. Cố gắng để tìm lỗi đó bằng cách sử dụng vi không phải là dễ dàng :-). – brechmos

15

Tôi muốn hoàn thành câu trả lời nếu có ai đó chạy cùng một biến thể như tôi đã làm: Tôi đã chạy mọi thứ trên môi trường Windows (cửa sổ 7). Dưới powershell, tôi đã chạy

pip freeze > requirements.txt 

Khi tôi thử nghiệm trên virtualenv mới, tôi đã có lỗi tương tự như trên. Vấn đề là một vấn đề mã hóa (ugh): đảm bảo tệp requirements.txt được viết bằng UTF-8 (không có BOM). Notepad ++ hoặc văn bản tuyệt vời có thể đảm bảo điều đó.

Hy vọng nó sẽ giúp bất kỳ ai khác cho câu trả lời ở trên là không đủ.

+3

Cảm ơn - trông giống như powershell tiết kiệm requirements.txt như unicode – Pakman

+1

Cảm ơn, điều này giải quyết vấn đề của tôi, mà trên mặt của nó, trông giống hệt như của OP. –

+0

Điều này đã giải quyết được sự cố của tôi ... – Akshay

2

Sự cố của tôi kết thúc ở một số thiết bị đầu cuối và - trông giống hệt nhau. Tôi đã có –r và nó đã ném lỗi này. Bạn muốn -r.

0

nếu bạn đang thúc đẩy để Azure, ngay cả với utf-8 bạn cũng có thể chạy vào vấn đề này:

ValueError: ('Thiếu phân phối đặc tả', '\ XEF \ xbb \ xbfDjango == 1.11.4')

cách an toàn là lưu dưới dạng requirements.txt dưới dạng tệp ansi.

tốt, nếu bạn đang chạy trên các cửa sổ

Các vấn đề liên quan