我正在尝试使用Travis CI来运行我的Python代码测试。
我的项目需要dbus模块,而且它在PyPi中不可用,所以我必须通过apt安装它。
问题是测试因ImportError失败:没有名为'dbus'的模块。这很奇怪,因为我可以在报告中看到成功安装所需的软件包。这是我的.travis.yml和Travis log的例子。
我做错了吗?
答案 0 :(得分:2)
在您发布的travis日志中,所有软件包都安装在虚拟环境中。
虚拟环境是在干净的状态下创建的 - 因此它没有任何指向系统库的链接,事实上它在documentation中声明:
CI环境为每个Python使用单独的virtualenv实例 版。系统Python不使用,不应该依赖。如果你 需要安装Python包,通过pip而不是apt。
如果您决定使用apt,请注意仅限Python系统包 在Ubuntu 12.04 LTS上包含Python 2.7库。这意味着 从存储库安装的软件包在其他软件包中不可用 即使您使用-system-site-packages选项,也可以使用virtualenv。
我相信它解释了你的问题:
python3-
包。