我有一个可以从命令行正常工作的trac安装。我将trac.cgi部署到正确的目录,但是当我打开页面时,我得到:
Trac detected an internal error: No module named pkg_resources
Traceback (most recent call last):
File "/some/path/htdocs/trac.cgi", line 22, in ?
import pkg_resources
ImportError: No module named pkg_resources
已安装 pkg_resources
。当我从命令行运行python时,我可以导入它。权限是对的(我可以阅读site-packages/pkg_resources.py
)。 sys.path是正确的(包括site-packages目录)。该文件以:
try:
import os
import pkg_resources
因此在失败之前不会修改路径。
还有其他情况导入会以这种方式失败吗?
答案 0 :(得分:1)
将文件 __ init __ .py添加到您已有pkg_resources.py模块的目录中。它会对你有用。
答案 1 :(得分:0)
我最终找到了答案。该脚本在集群上运行 - 因为我使用的是虚拟python安装,所以某些符号链接在其他节点上无法解析。他们只在我正在测试的机器上才行。
在virtual-python创建的文件夹中安装setuptools(即在所有服务器之间复制的目录中)解决了它。