在使用 pip install .
安装 Python 包时,如果只创建了 dist-info
文件夹而没有安装包本身,可能有以下几种原因:
setup.py
或 pyproject.toml
文件,导致 pip
无法正确识别需要安装的文件。解决方案: 确保 setup.py
或 pyproject.toml
文件中正确指定了 packages
或 include
参数。例如,在 setup.py
中,你可以使用 find_packages()
来自动包含所有子包:
```python
from setuptools import setup, find_packages
setup( name='your_package_name', version='0.1', packages=find_packages(), ) ```
.py
文件),pip
只会创建 dist-info
文件夹,而不会安装任何内容。.py
文件),并且这些文件被正确包含在 setup.py
或 pyproject.toml
中。pip
安装的包路径正确。你可以使用 pip show <package_name>
来查看包的安装路径。pip
可能会跳过实际的文件安装,只更新 dist-info
文件夹。bash
pip uninstall your_package_name
pip install .
setup.py
中的 install_requires
问题setup.py
中的 install_requires
包含了未满足的依赖项,pip
可能会在安装过程中失败,导致只创建 dist-info
文件夹。install_requires
是否正确配置。pyproject.toml
配置问题pyproject.toml
来配置构建系统,可能配置不正确,导致 pip
无法正确构建和安装包。pyproject.toml
文件正确配置了构建系统。例如:
toml
[build-system]
requires = ["setuptools>=42", "wheel"]
build-backend = "setuptools.build_meta"
pip
版本问题pip
,可能会遇到一些兼容性问题。pip
到最新版本:
bash
pip install --upgrade pip
setup.cfg
配置问题setup.cfg
文件来配置包,可能配置不正确,导致 pip
无法正确安装包。setup.cfg
文件正确配置了 [options]
部分,例如:
ini
[options]
packages = find:
如果你遇到 pip install .
只创建 dist-info
文件夹而不安装包本身的问题,建议从以上几个方面进行排查。通常,问题出在包的配置或结构上,确保 setup.py
或 pyproject.toml
文件正确配置,并且包目录中包含实际的 Python 模块。