python3 -m build 给出 ModuleNotFoundError:没有名为“pathlib2”的模块

Eft*_*zer 6 python build pathlib

我正在尝试构建一个 Python 包,但出现以下错误。

* Creating virtualenv isolated environment...
* Installing packages in isolated environment... (setuptools >= 40.8.0, wheel)
* Getting dependencies for sdist...
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 351, in <module>
    main()
  File "/usr/local/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 333, in main
    json_out['return_val'] = hook(**hook_input['kwargs'])
  File "/usr/local/lib/python3.10/site-packages/pep517/in_process/_in_process.py", line 285, in get_requires_for_build_sdist
    return hook(config_settings)
  File "/tmp/build-env-eyqolcf7/lib/python3.10/site-packages/setuptools/build_meta.py", line 341, in get_requires_for_build_sdist
    return self._get_build_requires(config_settings, requirements=[])
  File "/tmp/build-env-eyqolcf7/lib/python3.10/site-packages/setuptools/build_meta.py", line 320, in _get_build_requires
    self.run_setup()
  File "/tmp/build-env-eyqolcf7/lib/python3.10/site-packages/setuptools/build_meta.py", line 482, in run_setup
    super(_BuildMetaLegacyBackend,
  File "/tmp/build-env-eyqolcf7/lib/python3.10/site-packages/setuptools/build_meta.py", line 335, in run_setup
    exec(code, locals())
  File "<string>", line 5, in <module>
ModuleNotFoundError: No module named 'pathlib2'

ERROR Backend subprocess exited when trying to invoke get_requires_for_build_sdist

Run Code Online (Sandbox Code Playgroud)

我已经安装了pathlib2。解决办法是什么?

Div*_*ssh 0

根据该build软件包的官方文档,它没有稳定的兼容性

https://pypa-build.readthedocs.io/en/latest/installation.html#compatibility

您可以尝试切换到旧版本的python(推荐3.9)并重试,理想情况下,这应该可以解决错误,因为在回溯中,错误似乎源自setuptools(它将自动恢复到旧版本,并使用旧版本)蟒蛇版本)

注意:您还需要在新的 python 版本中重新安装构建

如果您遇到任何问题,请告诉我。