0

我得出结论,我问很多不知道这个问题答案的人,很多时候我们会这样做在Gemfile中需要一定的gem并进行bundle安装,gem会被安装,但是当我们在控制器中执行某些东西时,会在本地服务器上运行它,很多次它只是抛出这个未初始化的常量:: 有时候这个错误似乎自己消失了,有时候它只是停留在试图找出这个问题到底在哪里,我觉得它的路由或配置错误。你认为这个错误在哪里?我应该在哪里看? 为了使事情更具体化,现在我使用xmpp4r gem。 我在我的gemfile中有这行“gem'xmpp4r'”,我运行了bundle install。 然后在控制器我把这两行经过了很多论坛之后,很多宝石出现了未初始化的常量错误

客户= Jabber的:: Client.new(JID)
client.auth( '1234')
消息= Jabber的::消息::新(to_jid,体).set_type(:正常).set_id( '1')
my_muc = Jabber的:: MUC :: SimpleMUCClient.new(客户端)

怪异的部分是它没有给出客户端错误或消息,但它说,它无法找到MUC模块,然后我通过rvm,并试图找到它们的物理位置xmpp4r gem,在那里我找到了MUC.rb文件,并在它的注释中使用像这样

my_muc = Jabber的:: MUC :: SimpleMUCClient.new(my_client)

服务器给错误是

未初始化的常量的Jabber :: MUC

所以,球员在这里你去,如果你能解决这个问题,我们都非常感激。

好吧,10分钟它花费在解决这个问题在stackoverflow,欢呼的创造者和社区运行它,特别是gmile。

所以,如果你得到这样的错误,我想它的原因虚拟机不会递归地通过gem中的所有文件夹并添加所有.rb文件,我们必须特别要求我们的文件控制器。 只要进入

.rvm /宝石/红宝石1.9。2-P290 /宝石/


浪费时间,看看你是否正在试图访问的模块是存在的,然后看看它是否在创业板内的子文件夹,然后添加这些文件夹一样

需要 'gemname /子文件'

CHEERS

回答

0

试着把它放在你的文件上:

require 'xmpp4r' 
require 'xmpp4r/muc' 
相关问题