Pypi 包未安装

Posted

技术标签:

【中文标题】Pypi 包未安装【英文标题】:Pypi package not getting installed 【发布时间】:2022-01-15 14:08:40 【问题描述】:

我正在为 python 发布一个实用程序库,主要是为了我自己的使用。你可以在 pypi here 上找到它。存储库是here。这是我的 setup.cfg:

[metadata]
name = raddoo
version = 0.0.4
description = "A collection of useful utility functions for python"

[options]
packages = raddoo
python_version = >=3.6

我正在使用python -m build 构建,它给了我一个 tar.gz 和 whl 文件。当我在另一个位置 pipenv install raddoo 时,似乎没有任何东西安装到 site-packages

ls $(pipenv --venv)/lib/python3.9/site-packages
_distutils_hack              pip-21.3.1.virtualenv        setuptools-58.5.3.virtualenv
_virtualenv.pth              pkg_resources                wheel
_virtualenv.py               raddoo                       wheel-0.37.0.dist-info
distutils-precedence.pth     raddoo-0.0.4.dist-info       wheel-0.37.0.virtualenv
pip                          setuptools
pip-21.3.1.dist-info         setuptools-58.5.3.dist-info

尝试导入它也会失败:

python -c 'import raddoo'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'raddoo'

我做错了什么?

【问题讨论】:

【参考方案1】:

当你使用 ls 时,raddoo 就在那里。

确保你在你的环境中,并检查python的版本。

另外,在尝试导入它进行测试时,我收到以下错误:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.9/dist-packages/raddoo/__init__.py", line 1
import .context
       ^
SyntaxError: invalid syntax

要解决此问题,您可以进入 error.py、context.py、multimethod.py 和 __init__.py 并在导入时删除句点,而不是:

import .core

你会这样做:

import core

【讨论】:

点肯定必须在那里,否则 Python 3 将找不到模块(绝对与相对导入)。请参阅***.com/a/48716965/7976758 和***.com/… 的所有答案 谢谢,就是这样。我在正确的 virtualenv 中,但在错误的目录中,这使得 pipenv 在错误的站点包目录中查找。我不知道为什么,但你去吧。

以上是关于Pypi 包未安装的主要内容,如果未能解决你的问题,请参考以下文章

安装一个软件提示,该安装包未包含任何证书,安装失败,怎么解决

nodemon包未安装在nodejs中[重复]

Nuget 包未安装在 .Net Framework 中

linux安装源码包未解决

AndroidApp安装提示“该安装包未包含任何证书”问题处理

AEM 6.0 Web 控制台捆绑包(OSGi 捆绑包)中安装的包未正确安装(状态应为活动未安装)