在使用 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 pipsetup.cfg 配置问题setup.cfg 文件来配置包,可能配置不正确,导致 pip 无法正确安装包。setup.cfg 文件正确配置了 [options] 部分,例如:
ini
[options]
packages = find:如果你遇到 pip install . 只创建 dist-info 文件夹而不安装包本身的问题,建议从以上几个方面进行排查。通常,问题出在包的配置或结构上,确保 setup.py 或 pyproject.toml 文件正确配置,并且包目录中包含实际的 Python 模块。