エラー解消

【Poetry】ModuleNotFoundError: No module named 'cleo'の対処法

【Poetry】ModuleNotFoundError: No module named ‘cleo’の対処法

poetryをcronで実行できる手順をこちらの記事でご紹介しました。

その際に、出会したエラーが以下です。

ModuleNotFoundError: No module named 'cleo'

対処法に困ったので記載をしておきます。

ModuleNotFoundError: No module named 'cleo'

cronのlogには以下のエラーが記載されていました。

Traceback (most recent call last):
  File "/Users/xxxxxxxxxxx/.poetry/bin/poetry", line 16, in <module>
    from poetry.console import main
  File "/Users/xxxxxxxxxxx/.poetry/lib/poetry/console/__init__.py", line 1, in <module>
    from .application import Application
  File "/Users/xxxxxxxxxxx/.poetry/lib/poetry/console/application.py", line 1, in <module>
    from cleo import Application as BaseApplication
ModuleNotFoundError: No module named 'cleo'

全く思い当たるところがありません。

結論から言うと、対処法は簡単で、

poetryを一度アンインストール、その後、改めてインストールを実行すればOKです。

poetryのアンインストール

コマンドは以下です。

curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python - --uninstall

以下のような表示がでれば、アンインストール完了です。

# We are sorry to see you go!

This will uninstall Poetry.

poetryの再インストール

コマンドは以下です。

curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python
Retrieving Poetry metadata

以下のような表示がでれば、インストール完了です。

This installer is deprecated. Poetry versions installed using this script will not be able to use 'self update' command to upgrade to 1.2.0a1 or later.
# Welcome to Poetry!

This will download and install the latest version of Poetry,
a dependency and package manager for Python.

It will add the `poetry` command to Poetry's bin directory, located at:

$HOME/.poetry/bin

これで、改めてpoetryを実行すれば、おそらくエラーは解消されているはずです。

まとめ

ModuleNotFoundError: No module named 'cleo'

という謎のエラーの解消法をお伝えしました。

検索したところ、英語の記事ばかりで、日本語で解決した記事が全くなかったので、

対処法をお伝えしました。

poetryのアンインストールは不安もあったのですが、

特に不具合も全くありませんでした。

ぜひ参考にしてみてください。

-エラー解消