运行Odoo 11项目遇ImportError: No module named 'psutil'求助
解决Odoo 11中
ImportError: No module named 'psutil'的问题 嘿,我来帮你搞定这个头疼的问题!你说明明装了psutil包,但不管是运行Odoo还是命令行导入都报错,这大概率是Python环境路径冲突,或者包没装到正确的Python版本里。我给你几个一步步排查的方法:
1. 先确认你用的Python和pip是不是配对的
有时候系统里装了多个Python版本,pip装的包可能跑到另一个版本里去了。先在命令行执行这两个命令:
which python3 which pip3
看看输出的路径是不是一致的,比如如果python3指向/usr/bin/python3.5,那pip3也得是/usr/bin/pip3.5才行。要是路径不一样,说明你用的pip和运行Odoo的Python不是同一个环境。
2. 检查psutil到底装没装到Python3.5里
直接用Python3.5来测试导入:
python3.5 -c "import psutil; print(psutil.__version__)"
如果这个命令报错,那就是psutil没装到Python3.5的环境里,你得指定用Python3.5的pip来安装:
sudo python3.5 -m pip install psutil
3. 别忘了虚拟环境的坑
如果你是用虚拟环境来运行Odoo的,那必须先激活对应的虚拟环境,再装包才行。比如你的虚拟环境叫odoo11_env,激活命令大概是:
source odoo11_env/bin/activate
激活之后再执行:
pip install psutil
这样包才会装到虚拟环境的专属目录里,Odoo运行时才能找到它。
4. 试试避开权限问题
有时候用sudo装的包,普通用户可能访问不了。你可以试试不用sudo,加上--user参数安装:
pip3 install --user psutil
这个会把包装到当前用户的Python目录下,避免权限导致的访问问题。
5. 最后一招:强制重新安装
要是上面的方法都没用,那就先卸载再强制重装psutil,说不定是之前的安装损坏了:
sudo pip3 uninstall psutil sudo python3.5 -m pip install --force-reinstall psutil
按照这些步骤一步步试,应该就能解决这个导入错误啦!
内容的提问来源于stack exchange,提问作者a3adel
相关产品推荐
相关产品推荐

