Ruby 鲁比:我能';要求';只包含一个类的文件?

Ruby 鲁比:我能';要求';只包含一个类的文件?,ruby,class,rspec,module,Ruby,Class,Rspec,Module,我有一个包含以下内容的文件/project/lib/invacessor.rb class InvAccessor def initialize @browser = "browser" end end 还有一个spec文件project/spec/invaccessor_spec.rb,需要它 require_relative '../lib/invaccessor' describe Invaccessor do it {expect(2).to be_even}

我有一个包含以下内容的文件
/project/lib/invacessor.rb

class InvAccessor
  def initialize
    @browser = "browser"
  end
end
还有一个spec文件
project/spec/invaccessor_spec.rb
,需要它

require_relative '../lib/invaccessor'

describe Invaccessor do
  it {expect(2).to be_even}     
end
当我运行
rspec spec/invaccessor.rb
时,我得到
invaccessor
未初始化常量错误。我是否必须将所有文件内容放在一个模块中才能访问它们

我正在使用Ruby 2.2.2

是的,你可以。 在classfile.rb所在的目录中尝试以下操作:

>> require './classfile'
=> true
>> A
=> A

您绝对不必将类放入模块中来要求它。

您发布的代码没有问题。您是否可以编辑您的问题以包括您的Pry会话(即您在Pry中键入的所有内容以及它提供给您的所有输出)?我已发布了我遇到问题的原始文件,并对我的操作进行了更明确的描述。很抱歉。您的课程是
InvAccessor
,但您尝试引用
InvAccessor
。这个名字是区分大小写的。我只是想知道:在一个问题被回答(并且答案被批准)之后,它是否可以完全改变这个问题?现在,我的答案不再适合这个问题了。你能至少把老问题包括进去吗?