0
0
個人開発エンジニア応援 - 個人開発の成果や知見を共有しよう!-

Djangoサーバー起動時にModuleNotFoundError: No module named 'pkg_resources'が出た件

Posted at

背景

バックエンドの環境が更新され、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

ご参考になれば幸いです。
ご利用は自己責任で。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0