首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在OpenERP中安装额外的模块,因为RunTimeError :超出了cmp中的最大递归深度

无法在OpenERP中安装额外的模块,因为RunTimeError :超出了cmp中的最大递归深度
EN

Stack Overflow用户
提问于 2012-08-26 15:35:41
回答 1查看 3.4K关注 0票数 1

由于某些原因,我无法在OpenERP 6.1.2中安装一些额外的模块。我正在尝试安装Aeroo报告和Pexego OpenOffice报告。我已经安装了genshi,relatorio,lxsl,earoolib,但这并不影响下面显示的错误信息。在其他地方,我读到这个错误是由于配置错误。我重新安装了OpenERP (6.1 All-in-One),在阅读了OpenERP最新的“如何安装”指南后(这个过程很简单,没有发现任何线索)。

我还重新安装了Python,看看是不是它导致了这个问题,但它没有。我很困惑,因为我正在尝试安装的所有额外模块都会发生这种情况。原因一定是递归导入,但是我不知道在哪里或者解决什么来阻止这种递归导入。

OpenERP服务器运行在Windows7- 64位上,使用Python2.7.3 32位。我仔细检查了一下,以确保所有使用的Python都是32位的。

有谁有什么想法吗?非常感谢您的帮助!非常感谢您的考虑。

Flep

代码语言:javascript
复制
STACK TRACE:

Client Traceback (most recent call last):
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\common\http.py", line 180, in dispatch
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\controllers\main.py", line 1052, in call_button
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\controllers\main.py", line 996, in call_common
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\controllers\main.py", line 1010, in _call_kw
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\common\openerplib\main.py", line 250, in proxy
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\common\openerplib\main.py", line 117, in proxy
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\common\http.py", line 608, in send


Server Traceback (most recent call last):
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\web\common\http.py", line 593, in send
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\netsvc.py", line 360, in dispatch_rpc
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\service\web_services.py", line 586, in dispatch
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\osv\osv.py", line 167, in execute_kw
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\osv\osv.py", line 121, in wrapper
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\osv\osv.py", line 176, in execute
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\osv\osv.py", line 164, in execute_cr
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\base\module\wizard\base_module_upgrade.py", line 101, in upgrade_module
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\pooler.py", line 39, in restart_pool
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\registry.py", line 202, in new
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\loading.py", line 338, in load_modules
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\loading.py", line 253, in load_marked_modules
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\loading.py", line 165, in load_module_graph
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\module.py", line 409, in load_openerp_module
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\module.py", line 139, in load_module
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\report_aeroo\__init__.py", line 32, in <module>
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\module.py", line 139, in load_module
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\aeroolib\__init__.py", line 14, in <module>
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\module.py", line 139, in load_module
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\openerp\addons\aeroolib\__init__.py", line 14, in <module>
  233323\Server\server\.\openerp\modules\module.py", line 139, in load_module
 **<<repeat the above 6 lines 40 times>>**
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\module.py", line 99, in find_module
  File "C:\Program Files (x86)\OpenERP 6.1-20120813-233323\Server\server\.\openerp\modules\module.py", line 175, in get_module_path
  File "ntpath.pyo", line 73, in join
  File "ntpath.pyo", line 57, in isabs
  File "ntpath.pyo", line 125, in splitdrive
RuntimeError: maximum recursion depth exceeded in cmp

aeroolib__init__.py:(此目录的位置: openerp/addons/aeroolib)

代码语言:javascript
复制
line 14:    from aeroolib.reporting import MIMETemplateLoader, ReportRepository, Report
line 15:    import plugins

            __version__ = '1.0.0 RC4'

模块/module.py:(此目录的位置: openerp/ modules/module.py )

代码语言:javascript
复制
         def load_module(self, module_name):

             module_parts = module_name.split('.')
             if len(module_parts) == 3 and module_name.startswith('openerp.addons.'):
                 module_part = module_parts[2]
                 if module_name in sys.modules:
                     return sys.modules[module_name]

             if len(module_parts) == 1:
                 module_part = module_parts[0]
                 if module_part in sys.modules:
                     return sys.modules[module_part]

             try:
                 # Check if the bare module name shadows another module.
                 f, path, descr = imp.find_module(module_part)
                 is_shadowing = True
             except ImportError, e:
                 # Using `import <module_name>` instead of
                 # `import openerp.addons.<module_name>` is ugly but not harmful
                 # and kept for backward compatibility.
                 is_shadowing = False

             # Note: we don't support circular import.
**line 139:    f, path, descr = imp.find_module(module_part, ad_paths)**
             mod = imp.load_module('openerp.addons.' + module_part, f, path, descr)
             if not is_shadowing:
                 sys.modules[module_part] = mod
                 for k in sys.modules.keys():
                     if k.startswith('openerp.addons.' + module_part):
                         sys.modules[k[len('openerp.addons.'):]] = sys.modules[k]
             sys.modules['openerp.addons.' + module_part] = mod
             return mod

modules/module.py :第179行

代码语言:javascript
复制
     def get_module_path(module, downloaded=False, display_warning=True):
         """Return the path of the given module.

         Search the addons paths and return the first path where the given
         module is found. If downloaded is True, return the default addons
         path if nothing else is found.

         """
         initialize_sys_path()
         for adp in ad_paths:
             if os.path.exists(opj(adp, module)) or os.path.exists(opj(adp, '%s.zip' % module)):
                 return opj(adp, module)

         if downloaded:
ln 179:      return opj(_ad, module)
         if display_warning:
             _logger.warning('module %s: module not found', module)
         return False
EN

回答 1

Stack Overflow用户

发布于 2012-08-28 03:32:17

我能想到的唯一一件事是OpenERP的aeroolib模块在Python路径上,而它不应该在Python路径上。我认为当Python看到下面这一行时,它会加载OpenERP模块aeroolib而不是Aeroolib库模块:

代码语言:javascript
复制
from aeroolib.reporting import MIMETemplateLoader, ReportRepository, Report

我建议您检查您的Python路径,看看它是否包含OpenERP 6.1-20120813-233323\Server\server\openerp\addons

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12128428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档