全局名称'GLib2Reactor'未定义

时间:2013-12-29 11:06:12

标签: python raspberry-pi upnp

我正在努力使用python-brisa框架来获取一些python代码,代码不是由我编写的,而是应该直截了当。

    from brisa.core.reactors import install_default_reactor
reactor = install_default_reactor()

from brisa.core.threaded_call import run_async_function

import xml.etree.ElementTree as ET

from time import sleep

import sys, os

import sonos
import knx

在安装框架之后我得到了

Traceback (most recent call last):
  File "knxsonos.py", line 24, in <module>
    reactor = install_default_reactor()
  File "/usr/local/lib/python2.7/dist-packages/brisa/core/reactors/__init__.py", line 14, in install_default_reactor
    return GLib2Reactor()
NameError: global name 'GLib2Reactor' is not defined

我一直在寻找堆栈溢出,谷歌搜索几天没有找到解决方案。

任何人??,帮助将不胜感激......

2 个答案:

答案 0 :(得分:1)

这里有一些可能性:

  • GLib2Reactor不会返回任何内容 - 那么您的代码错误
  • 未声明GLib2Reactor - 试试这个:

    x = GLib2Reactor()
    return x

  • 必须导入GLib2Reactor - 只需导入

我最好的建议:阅读文档

答案 1 :(得分:0)

当我在Ubuntu Trusty(14.04)系统上看到此问题时,它是由import gobject失败引起的。解决方法是安装正确的软件包:

sudo apt-get install python-gobject-2

此软件包已标记为已弃用,因此对于较新的发行版,可能需要安装python-gi软件包,然后修改调用方以使用新名称:

from gi.repository import GObject