我能够在我的开发服务器上使用python按预期运行xapian,但我的Web服务器出现问题。
我一直遇到这个错误:
导入xapian Traceback(最近一次调用最后一次): 文件“”,第1行,in 文件“/home/x/lib/python2.6/xapian/init.py”,第28行,在 _xapian = swig_import_helper() 在swig_import_helper中输入文件“/home/x/lib/python2.6/xapian/init.py”,第27行 return _mod UnboundLocalError:在赋值之前引用的局部变量'_mod'
我安装了最新版本的swig并重新安装了xapian核心和xapian绑定,但错误仍然存在。
非常感谢任何想法。
答案 0 :(得分:3)
我相信这里的问题将是安装xapian-bindings包。
Python的xapian绑定包含两部分 - 用python编写的部分和编译的模块。您已经成功安装了python部件(即/home/x/lib/python2.6/xapian/init.py),但是当python部件尝试加载已编译的模块时,它无法导入它。
不幸的是,一个错误(可能在swig中)导致引发另一个错误,因此您没有看到导入失败的异常。要查看导入错误,请删除modern / xapian.py的第27行;即,从阅读中改变:
try:
_mod = imp.load_module('_xapian', fp, pathname, description)
finally:
fp.close()
return _mod
阅读:
try:
_mod = imp.load_module('_xapian', fp, pathname, description)
finally:
fp.close()
你没有说你是如何安装xapian绑定的,你正在使用什么平台,或者你正在使用什么版本的Xapian,所以我无法真正推测你是如何进入这种状态的。希望完整的例外情况具有启发性。