3

我正在尝试将 Travis 设置为Get Things GNOME!. 我的.travis.yml

language: python

python:
  - '3.3'

before_install:
  - sudo apt-get update
  - sudo apt-get install -qq python3-gi gir1.2-gtk-3.0

virtualenv:
  system_site_packages: true

install:
  - pip install -e git+git://github.com/getting-things-gnome/liblarch.git#egg=liblarch
  - pip install -r requirements.txt

script:
  - ./run-tests

但是,构建失败:

======================================================================
ERROR: Failure: ImportError (No module named 'gi._gi')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/virtualenv/python3.3_with_system_site_packages/lib/python3.3/site-packages/nose/failure.py", line 38, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/home/travis/virtualenv/python3.3_with_system_site_packages/lib/python3.3/site-packages/nose/loader.py", line 413, in loadTestsFromName
    addr.filename, addr.module)
  File "/home/travis/virtualenv/python3.3_with_system_site_packages/lib/python3.3/site-packages/nose/importer.py", line 47, in importFromPath
    return self.importFromDir(dir_path, fqname)
  File "/home/travis/virtualenv/python3.3_with_system_site_packages/lib/python3.3/site-packages/nose/importer.py", line 94, in importFromDir
    mod = load_module(part_fqname, fh, filename, desc)
  File "/home/travis/virtualenv/python3.3_with_system_site_packages/lib/python3.3/imp.py", line 180, in load_module
    return load_source(name, filename, file)
  File "/home/travis/virtualenv/python3.3_with_system_site_packages/lib/python3.3/imp.py", line 119, in load_source
    _LoadSourceCompatibility(name, pathname, file).load_module(name)
  File "<frozen importlib._bootstrap>", line 584, in _check_name_wrapper
  File "<frozen importlib._bootstrap>", line 1022, in load_module
  File "<frozen importlib._bootstrap>", line 1003, in load_module
  File "<frozen importlib._bootstrap>", line 560, in module_for_loader_wrapper
  File "<frozen importlib._bootstrap>", line 868, in _load_module
  File "<frozen importlib._bootstrap>", line 313, in _call_with_frames_removed
  File "/home/travis/build/getting-things-gnome/gtg/tests/tools/test_networkmanager.py", line 22, in <module>
    from GTG.tools.networkmanager import is_connection_up
  File "/home/travis/build/getting-things-gnome/gtg/GTG/tools/networkmanager.py", line 23, in <module>
    from gi.repository import NetworkManager, NMClient
  File "/usr/lib/python3/dist-packages/gi/__init__.py", line 23, in <module>
    from ._gi import _API, Repository
ImportError: No module named 'gi._gi'

模块gi._gi应安装为 packge python3-gi

为什么 Travis 不能导入gi模块?

4

1 回答 1

2

通过使用 Python 3.2 版而不是 3.3 版解决了该问题

相关讨论可以在这里找到:https ://github.com/getting-things-gnome/gtg/issues/10

于 2014-04-13T16:20:08.793 回答