ImportError:无法从“packaging.version”导入名称“LegacyVersion”

Mee*_*Mee 2 python pipenv pipenv-install

我正在使用 python 3.10.6,并且安装了 pipelinev,版本 2022.12.19,我计划使用 runway 运行一个项目,因此为此我创建了一个文件夹,执行了命令,pipenv --python 3.10然后在 pipfile 中更新以包含 runway、pip文件如下:

[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]
runway = "== 2.6.3"

[dev-packages]

[requires]
python_version = "3.10"
python_full_version = "3.10.6"

Run Code Online (Sandbox Code Playgroud)

然后我运行命令pipenv install,我期望跑道在那里,但每次我尝试使用跑道运行命令时,我都会收到此错误:

ImportError: cannot import name 'LegacyVersion' from 'packaging.version'任何想法?

n_8*_*n_8 7

尝试将您的“包装”降级到 21.3 而不是 22。这为我解决了同样的问题(使用跑道)。

\n

我希望我能告诉你我在哪里找到这个的,但说实话,它只是回滚了软件包版本,因为最新版本缺少 runway 使用的一些东西及其 terraform 版本验证。降级软件包绝不是解决方案,但目前它只是一个创可贴。

\n

对此进行了一些概述: https: //github.com/onicagroup/runway/issues/1729,尽管 Jake 使用诗歌而不是 Pipenv,但它非常相似。

\n

例子:

\n
[[source]]\nurl = "https://pypi.org/simple"\nverify_ssl = true\nname = "pypi"\n\n[packages]\nrunway = "*"\npackaging = "==21.3"\n\n[dev-packages]\n\n[requires]\npython_version = "3.10"\npython_full_version = "3.10.6"\n
Run Code Online (Sandbox Code Playgroud)\n

python3.7我确实想提一下,我已经用和做了这个创可贴python3.8。python版本也与它有很大关系,我目前在我的pyenv中使用3.10,我最近没有机会进行任何新的跑道开发(在pipenv中使用python3.10)。当我有新的跑道开发时,我会看看是否可以尝试一下(我经常使用跑道 \xe2\x9d\xa4\xef\xb8\x8f ),我会尽力跟进。

\n

但无论如何,请发帖并让我知道我的第一条评论是否有帮助。:)

\n