You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python包上传PyPI遇异常:目录结构不符合预期

解决PyPI包安装后目录结构异常的问题

问题根源

  • 项目内my_module/目录下嵌套了多余的my_module/目录,其中包含PKG-INFO等打包残留文件,干扰正常打包流程。
  • setup.py配置可能未正确指定待打包模块,或未清理旧构建产物,导致最终包仅包含dist-info目录,缺失实际代码。

解决步骤

  • 清理无效文件和目录
    先删除嵌套的残留目录:

    rm -r my_project/my_module/my_module/
    

    再清理所有旧构建产物:

    rm -r my_project/build/ my_project/dist/ my_project/*.egg-info/
    
  • 修正setup.py配置
    确保配置正确指定打包模块,示例如下:

    from setuptools import setup, find_packages
    
    setup(
        name="my_module",  # 需与dist目录下的包名一致
        version="1.1.5",
        packages=find_packages(),  # 自动识别项目中的my_module包
        include_package_data=True,  # 若需打包test.txt这类非Python文件,需开启此选项
        # 补充其他必要配置:author、description、install_requires等
    )
    

    若要包含test.txt,需在项目根目录创建MANIFEST.in文件,内容:

    include my_module/test.txt
    
  • 重新构建并上传
    执行标准打包和上传命令:

    python setup.py sdist bdist_wheel
    twine upload dist/*
    
  • 验证安装结果
    在干净虚拟环境中安装并检查:

    pip install my_module==1.1.5
    pip show -f my_module
    

    此时site-packages中应同时存在my_module/代码目录和my_module-1.1.5.dist-info/目录。

内容的提问来源于stack exchange,提问作者FrostDream

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 06:45:10