You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Odoo Enterprise自定义addon_path无法识别问题求助

解决Odoo 14 Enterprise自定义Addons目录不加载模块的问题

我之前部署Odoo企业版时也碰到过几乎一模一样的问题,结合你给出的信息,咱们可以从这几个方向排查解决:

1. 检查模块的__manifest__.py文件是否合法

Odoo识别模块的核心是根目录下的__manifest__.py文件(Odoo 10+版本统一用这个,旧版本是__openerp__.py),如果这个文件有语法错误或者必填字段缺失,Odoo会直接跳过该模块。

  • 先检查文件语法:
    python3 -m py_compile /odoo/custom/addons/你的模块目录/__manifest__.py
    
    如果有语法错误,命令会直接输出错误信息,修复后再重试。
  • 确认必填字段完整:比如name、version、depends、author这些字段必须存在,且depends里的依赖模块都是Odoo已安装的(base模块是必须依赖项)。

2. 清理Odoo缓存并强制更新模块列表

有时候Odoo会缓存模块信息,即使路径配置正确也不会重新扫描:

  • 先停止Odoo服务:
    service odoo-server stop
    
  • 删除Odoo的会话缓存目录:
    rm -rf /var/lib/odoo/sessions/*
    
  • 重启服务后,进入开发者模式,点击「更新模块列表」时,勾选强制更新选项(在弹出的操作窗口里),再执行更新操作。

3. 验证自定义目录的完整权限链

你提到/odoo/custom/addons的权限是odoo:odoo和755,但要注意上级目录的权限也会影响Odoo的访问权限:

  • 检查/odoo/custom目录的权限:
    ls -ld /odoo/custom
    
    如果所有者不是odoo:odoo,或者没有执行权限(权限位不是755),Odoo进程无法遍历进入子目录。修复命令:
    chown -R odoo:odoo /odoo/custom
    chmod -R 755 /odoo/custom
    

4. 查看详细日志定位加载失败原因

你目前只看到路径被识别,但可以通过调高日志级别查看模块加载的细节:

  • 编辑/etc/odoo-server.conf,添加或修改日志级别配置:
    log_level = debug
    
  • 重启服务后,再次更新模块列表,然后实时查看日志:
    tail -f /var/log/odoo/odoo-server.log
    
    日志里会显示每个模块的加载状态,如果某个模块加载失败,会有明确的错误提示(比如依赖缺失、文件权限不足等)。

5. 检查模块是否与现有模块重名

Odoo会按照addons_path里的顺序加载模块,如果自定义目录里的模块和enterprise/addons或odoo-server/addons里的模块重名(目录名或__manifest__.py里的name字段重复),后面的模块会被直接忽略。可以对比现有模块的名称,确保自定义模块唯一。

按照上面的步骤逐一排查,应该能解决模块不显示的问题。

内容的提问来源于stack exchange,提问作者Augusto Murri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 21:27:54