[PYTHON] ModuleNotFoundError in der Poesie: Kein Modul namens'setuptools '

0. Einleitung

Ich habe die Untersuchung der Ursache nicht detailliert beschrieben, sondern ein Memo der Lösung.

1. Umwelt

2. Phänomen

Der folgende Fehler trat auf, wenn ein Git-Repo mit Poesie installiert wurde. Nennen Sie es ein Repo namens Hoge.

(.venv) bash-3.2$ poetry update
Updating dependencies
Resolving dependencies... (10.2s)

Writing lock file


Package operations: 12 installs, 0 updates, 0 removals

  - Installing hoge (0.0.1 acd565a)

[EnvCommandError]
Command ['/Users/kazeto/Works/aaa/.venv/bin/pip', 'install', '--no-deps', '-U', '-e', '/Users/kazeto/Works/aaa/.venv/src/hoge'] errored with the following return code 1, and output: 
Obtaining file:///Users/kazeto/Works/aaa/.venv/src/hoge
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
    Preparing wheel metadata: started
    Preparing wheel metadata: finished with status 'done'
Installing collected packages: hoge
  Running setup.py develop for hoge
    ERROR: Command errored out with exit status 1:
     command: /Users/kazeto/Works/aaa/.venv/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/Users/kazeto/Works/aaa/.venv/src/hoge/setup.py'"'"'; __file__='"'"'/Users/kazeto/Works/aaa/.venv/src/hoge/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps
         cwd: /Users/kazeto/Works/aaa/.venv/src/hoge/
    Complete output (3 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    ModuleNotFoundError: No module named 'setuptools'
    ----------------------------------------
ERROR: Command errored out with exit status 1: /Users/kazeto/Works/aaa/.venv/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/Users/kazeto/Works/aaa/.venv/src/hoge/setup.py'"'"'; __file__='"'"'/Users/kazeto/Works/aaa/.venv/src/hoge/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps Check the logs for full command output.

Übrigens, wie im Fehlerprotokoll gezeigt, als ich versuchte, das Protokoll zu überprüfen und den Code, in dem der Fehler aufgetreten ist, manuell auszuführen, wurde er normal eingegeben und ich habe die Ursache nicht gut verstanden ...

(.venv) bash-3.2$ /Users/kazeto/Works/aaa/.venv/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/Users/kazeto/Works/aaa/.venv/src/hoge/setup.py'"'"'; __file__='"'"'/Users/kazeto/Works/aaa/.venv/src/hoge/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(_le__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' develop --no-deps
running develop
running egg_info
creating hoge.egg-info
writing hoge.egg-info/PKG-INFO
writing dependency_links to hoge.egg-info/dependency_links.txt
writing top-level names to hoge.egg-info/top_level.txt
writing manifest file 'hoge.egg-info/SOURCES.txt'
reading manifest file 'hoge.egg-info/SOURCES.txt'
writing manifest file 'hoge.egg-info/SOURCES.txt'
running build_ext
Creating /Users/kazeto/Works/aaa/.venv/lib/python3.7/site-packages/hoge.egg-link (link to .)
Adding hoge 0.0.1 to easy-install.pth file

Installed 

Und als ich in .venv nachgesehen habe, habe ich Setup-Tools gefunden.

3. Lösung

Installieren Sie es vorerst, indem Sie dem Build-System mit pyproject.toml von git repo (in diesem Fall hoge) setuptools hinzufügen.

Vor der Korrektur

[build-system]
requires = ["poetry>=1.00"]
build-backend = "poetry.masonry.api"

Überarbeitet

[build-system]
requires = ["poetry>=1.00", "setuptools"]
build-backend = "poetry.masonry.api"

Nachtrag

Ich habe jetzt ein Problem gefunden. Die Version der Poesie ist anders, aber das ist es wahrscheinlich. https://github.com/python-poetry/poetry/issues/3001

Recommended Posts

ModuleNotFoundError in der Poesie: Kein Modul namens'setuptools '
ModuleNotFoundError in Python: Kein Modul mit dem Namen story
ModuleNotFoundError: Kein Modul mit dem Namen 'py4j'
ModuleNotFoundError: Kein Modul mit dem Namen 'flask_sqlalchemy'
ModuleNotFoundError: Kein Modul mit dem Namen'_bz2 'in Python in pyenv
Import cv2 ModuleNotFoundError: Kein Modul mit dem Namen 'cv2' in Python3
[Python] ModuleNotFoundError: Kein Modul mit dem Namen 'urlparse'
Python-Fehler: ModuleNotFoundError: Kein Modul mit dem Namen 'flask'
[Frage] Kein Modul namens "Selenium" in PyCharm
So lösen Sie ModuleNotFoundError auf: Kein Modul mit dem Namen XXX in Jupyter Notebook
Warum ModuleNotFoundError: In "Deep Learning from Grund" wird kein Modul mit dem Namen "didaset.mnist" angezeigt.
Was tun, wenn ModuleNotFoundError: In Python tritt kein Modul mit dem Namen 'XXX' auf
Der heutige Python-Fehler: ModuleNotFoundError: Kein Modul benannt
Der heutige Python-Fehler: ModuleNotFoundError: Kein Modul benannt
Microsoft Cognitive Toolkit: ModuleNotFoundError: Kein Modul mit dem Namen 'cntk._cntk_py'
Gegenmaßnahmen für ModuleNotFoundError: Kein Modul mit dem Namen '***' beim Ausführen von Flask
Der heutige Python-Fehler: ModuleNotFoundError: Kein Modul mit dem Namen'requests '
Der heutige Python-Fehler: ModuleNotFoundError: Kein Modul mit dem Namen'bs4 '
Importfehler: Kein Modul mit dem Namen 'xxxxx' in Python3
ModuleNotFoundError: Kein Modul Was tun, wenn Sie'tensorflow.contrib 'erhalten?
Auflösen Kein Modul namens tkinter
Löser Problem Fehler in der Poesie
Ich erhalte "Sanity Check" - und "No Module" -Fehler in der Importnummer
Fehler bei der Installation von opencv-python auf jetson nano (ModuleNotFoundError: Kein Modul namens'skbuild ')