![](/img/trans.png)
[英]devpi - pip install setup.cfg MissingSectionHeaderError - virtualenv
[英]pip install does not install local module/package from setup.cfg
我有以下 Pipfile 和 setup.cfg,當我執行pip install -e.
它在install_requires
下安裝軟件包,但不安裝本地 package。
點文件——
[[source]]
url = "https://${USERNAME}:${PASSWORD}@${HOST}"
verify_ssl = true
name = "python"
[packages]
my-cli = {editable = true, path = "."}
[dev-packages]
[requires]
python_version = "3.9"
設置.cfg --
[metadata]
name = my-cli
version = 0.1.0
[options]
include_package_data = True
install_requires =
click
PyYaml
jsonschema
[options.package_data]
mymodule.resources = *.*
當我運行pip list
時,我只能看到以下內容:
Package Version Location
------------ --------- -------------------------
click 8.0.3
PyYaml 3.13
jsonschema 4.1.2
但我看不到 my-cli package。
Pipfile由pipenv使用,而不是由常規/普通 pip 使用。
請參閱https://pipenv.pypa.io/en/latest/basics/#example-pipfile-pipfile-lock :
示例 Pipfile 和 Pipfile.lock
Pipfiles 包含項目依賴項的信息,並取代了大多數 Python 項目中使用的 requirements.txt 文件。 您應該在 Git 存儲庫中添加一個 Pipfile,讓克隆存儲庫的用戶知道唯一需要的就是在機器上安裝 Pipenv 並鍵入
pipenv install
。 Pipenv 是使用 Pipfile 的參考實現。
正在做
pip install -e .
不會讀取您的 Pipfile。
您需要改為使用
pipenv install -e .
安裝您的可編輯依賴項並將其添加到Pipfile
或者
pipenv install
如果可編輯的依賴項已經在 Pipfile 中並且您只希望pipenv
執行安裝操作。
無論哪種方式, pipenv
都會安裝您的可編輯依賴項 ( my-cli
) 及其在setup.cfg 、 setup.py和pyproject.toml中定義的所有必需依賴項(遵循打包 Python 項目文檔中的規則)。
你可以做pipenv graph
來查看已安裝的包
sample-module$ pipenv graph
my-cli==0.1.0
- click [required: Any, installed: 8.0.3]
- jsonschema [required: Any, installed: 4.3.3]
- attrs [required: >=17.4.0, installed: 21.4.0]
- pyrsistent [required: >=0.14.0,!=0.17.2,!=0.17.1,!=0.17.0, installed: 0.18.0]
- PyYaml [required: Any, installed: 6.0]
它顯示了package_requires
中列出的包是my-cli
的子依賴項。
根據您的評論:
現在問題已解決,基本上 pip 安裝發生在 ubuntu 映像中,並最終啟用了 venv,“RUN apt-get update && apt-get install -y python3.9-venv”“RUN python3 -m venv /opt /venv"
偉大的。 Python 的內置venv和pipenv 都提供了一種創建和維護虛擬環境的方法。 您可以從它的 基本用法教程中了解pipenv
。 我想說的主要區別是 pipenv 維護一個 Pipfile 和一個 Pipfile.lock 來跟蹤虛擬環境的包。
使用哪個更方便。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.