降级Python版本后启动Odoo14报ModuleNotFoundError: No module named 'odoo'如何解决
Odoo14 Python版本降级后ModuleNotFoundError报错解决方案
报错核心原因是切换Python 3.6.9后,新环境未安装Odoo核心模块、服务配置未适配新Python路径导致,按以下步骤排查即可:
- 第一步获取Python3.6实际执行路径,执行命令:
which python3.6
记录返回的完整路径,例如/usr/bin/python3.6 - 第二步修改Odoo服务配置文件,配置文件通常位于
/etc/systemd/system/odoo.service或/lib/systemd/system/odoo.service,找到ExecStart配置项,将行首的Python解释器路径替换为上一步记录的Python3.6路径 - 第三步为Python3.6安装Odoo全量依赖,先安装对应版本的pip(若已安装可跳过):
curl https://bootstrap.pypa.io/pip/3.6/get-pip.py | python3.6
再进入Odoo项目根目录,执行依赖安装:python3.6 -m pip install -r requirements.txt - 第四步验证Odoo模块加载状态,执行命令:
python3.6 -c "import odoo; print(odoo.__file__)"
无报错且返回Odoo模块文件路径即为正常,若仍提示找不到模块,将Odoo项目根目录添加到Python3.6全局路径:在/etc/profile末尾添加export PYTHONPATH=/你的/Odoo/项目/根目录路径:$PYTHONPATH,保存后执行source /etc/profile生效 - 第五步重启服务生效:
systemctl daemon-reloadsystemctl restart odoo
补充说明:Odoo14官方最低适配Python版本为3.6,若后续出现依赖版本不兼容报错,可手动调整requirements.txt内对应依赖的版本号至支持Python3.6的范围即可。
内容的提问来源于stack exchange,提问作者nessHaf
相关产品推荐
相关产品推荐

