-1

当我尝试调试我创建的扩展时,出现以下错误。我对CKAN很陌生。我正在尝试学习如何开发 CKAN 扩展。

似乎“repoze”模块没有被加载。这是python路径问题吗?这个模块应该在哪里存在?

File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1815, in declare_namespace
   path = sys.modules[parent].__path__
KeyError: 'repoze'
4

1 回答 1

0

要开发扩展,您需要完成 CKAN 的源代码安装。假设您已经这样做了,您将把 Repoze python 模块放入 Python 虚拟环境中:

{pyenv}/lib/python2.7/site-packages/repoze

为了让 Python 找到 Repoze 等,您需要“激活”这个环境。CKAN源代码安装说明描述了所有这些,但这里是相关位,使用建议的环境位置/usr/lib/ckan/default

对于命令行程序:

. /usr/lib/ckan/default/bin/activate

或者对于 python 程序,使用这个可执行文件运行它:

/usr/lib/ckan/default/bin/python

或者对于 apache 部署,指定环境是 WSGI 脚本文件的这一部分:

activate_this = os.path.join('/usr/lib/ckan/default/bin/activate_this.py')
execfile(activate_this, dict(__file__=activate_this))
于 2013-07-11T14:08:38.240 回答