使用pip安装Python项目时丢失模块

2024-09-30 01:32:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在部署我的第一个python项目,但在安装方面有问题。我遵循了https://packaging.python.org/guides/distributing-packages-using-setuptools/#uploading-your-project-to-pypi中概述的实践。我的项目由一个顶级可执行脚本bin/gsat组织,该脚本调用导入其他模块,如下所示:

import gsat.input_validation as input_validation

模块位于src/gsat/,遵循https://github.com/pypa/sampleproject示例项目中的安排

如果使用开发模式从项目源本地安装:

pip install -e .

。。。那么我在安装和软件工作方面就没有问题了

但如果我从PyPI安装它:

pip install "gsat"

。。。然后它将不会运行,因为import语句找不到模块。错误:

  File "/Library/Frameworks/Python.framework/Versions/3.7/bin/gsat", line 10, in <module>
    import gsat.input_validation as input_validation
ModuleNotFoundError: No module named 'gsat'

完整项目位于https://github.com/MikeAxtell/gsat,提交c680172。该项目在PyPI上也被称为“gsat”。分发文件的格式如下:

python3 setup.py sdist bdist_wheel

。。。下面是fun setup.py文件。我敢肯定这是一个noob问题;我不熟悉python打包和python编程,因此提前感谢您的帮助

setup.py:


with open("README.md", "r") as fh:
    long_description = fh.read()

setuptools.setup(
    name="gsat", 
    version="0.1a",
    author="Michael J. Axtell",
    author_email="mja18@psu.edu",
    description="General Small RNA-seq Analysis Tool",
    long_description=long_description,
    long_description_content_type="text/markdown",
    url="https://github.com/MikeAxtell/gsat",
    scripts=['bin/gsat'],
    package_dir={'': 'src'},
    packages=setuptools.find_packages(where='gsat'),
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: MIT License",
        "Operating System :: OS Independent",
    ],
    python_requires='>3.5, <4',
    install_requires=['biopython','python-Levenshtein'],
)

Tags: 模块项目httpsimportgithubinputbinpackages

热门问题