我正在使用RubyMine IDE,所以这可能是因为我不知道如何使用它!但这就是我所拥有的: 名为MyFirstModule的模块,其名称为say_hello
module MyFirstModule
def say_hello
puts 'Hello'
end
end
还有一个像这样编写它的类:
require 'MyFirstModule'
class ModuleTester
include MyFirstModule
end
mt = ModuleTester.new
mt.say_hello
然后我通过IDE运行程序,这是我得到的错误:
/Users/Jony/.rvm/rubies/ruby-1.9.3-p374/bin/ruby -e $ stdout.sync =真; $ stderr.sync = TRUE;负载($ 0 = ARGV.shift) /Users/Jony/RubymineProjects/Rubyist/play_one.rb /Users/Jony/.rvm/rubies/ruby-1.9.3-p374/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in
require': cannot load such file -- MyFirstModule (LoadError) from /Users/Jony/.rvm/rubies/ruby-1.9.3-p374/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in
需要'来自/Users/Jony/RubymineProjects/Rubyist/play_one.rb:1:in { - 1}}加载'来自-e:1:in''
答案 0 :(得分:1)
require语句使用不带rb的文件名,而不使用类/模块标识符。 我猜您需要将需求行更改为:
要求'my_first_module'
您还需要检查加载路径。