背景
バックエンドの環境が更新され、git pullし反映後、それまでは問題なく起動していたDjangoサーバーが起動しなくなった。
また、投稿者自身はもっぱらフロントエンド開発ばかりの為、pythonの知見はほぼない。
経緯
git pull
を行い反映後、poetry instal
を行う。
python manage.py runserver
を実行したところ、エラーが発生。
もちろん、gitブランチを切り替えても解決せず、フロントエンド開発が出来なくなってしまった。
エラー内容
細かいところは大人の事情で省略・・・
一番最後のエラーログ
$ python manage.py runserver
... 省略 ...
ModuleNotFoundError: No module named 'pkg_resources'
環境
- windows10
- Python 3.8.10
- poetry 1.1.12
- pip 21.3.1
調査した内容
-
poetry install
を行っても、相変わらず上記エラーが発生 -
poetry show
の結果とpyproject.toml
の内容に差分があることがわかった- どうやら
setuptools
が仮想環境にインストールされていないみたい
- どうやら
結論
恐らく正攻法ではない気がするが、以下の手順で一旦解決(?)
※一部マスキングしてます
# 依存関係を一旦installする
$ poetry install
# 仮想環境に入り pythonコマンドで検証(エラーが発生することを確認)
$ python
Python 3.8.10 (tags/v3.8.10:3d8993a, xxx 0 0000, 00:00:00) [MSC v.1928 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import setuptools
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'setuptools'
>>> exit()
# setuptoolsをpipコマンドでinstallする
$ pip install setuptools
Collecting setuptools
Using cached setuptools-68.2.2-py3-none-any.whl (807 kB)
Installing collected packages: setuptools
Successfully installed setuptools-68.2.2
# 仮想環境に入り pythonコマンドで検証(エラーが発生しないことを確認)
$ python
Python 3.8.10 (tags/v3.8.10:3d8993a, xxx 0 0000, 00:00:00) [MSC v.1928 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import setuptools
>>> exit()
(.venv)
# サーバー起動コマンドを実行し正常に動作することを確認する
$ python manage.py runserver
ご参考になれば幸いです。
ご利用は自己責任で。。