簡體   English   中英

在virtualenv中設置:`pip install -e .` vs`python setup.py install`

[英]Setup in virtualenv: `pip install -e .` vs `python setup.py install`

我正在關注一個讓我使用virtualenv的Flask教程,並用它構建了一個app目錄樹,如下所示:

app/
|__app/
|__app.egg-inf/
|__setup.py
|__venv/

在我的venv ,教程告訴我運行pip install -e . 這似乎是使用我的setup.py來安裝依賴項和我的應用程序。

為什么教程讓我運行pip install -e . 為什么不python setup.py install 有什么區別?

(FWIW, export FLASK_APP=app; flask runpip install -e .export FLASK_APP=app; flask run正常pip install -e .但在python setup.py install后無效)

首先,您提到的命令並不等效,特別是python setup.py install不會為您提供可編輯的安裝。 pip <-> python setup.py等價物是:

Editable   pip                    setup.py
yes        pip install -e .       python setup.py develop    
no         pip install .          python setup.py install    

話雖如此,一般建議使用pip有一系列原因:

  • 依賴關系會自動安裝
  • 有一種簡單的卸載方法

在您的情況下,我高度懷疑您的包具有依賴關系,如果您使用pip則會自動安裝,但如果您使用python setup.py install則不會。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM