Ruby错误 - 未初始化的常量OpenStruct(NameError)

use*_*294 6 ruby

我试图使用ruby的optionparse来解析我的ruby脚本的参数.问题是当我运行脚本时这个bundle exec ruby​​ generation.rb --help我收到错误"uninitialized constant OpenStruct(NameError)"

我相信,因为我使用bundle exec运行脚本,所以我不应该收到此错误.我究竟做错了什么.

require 'optparse'

    def parse(args)

        options = OpenStruct.new
        options.dir = '../somerepo'
        opts = OptionParser.new do |opts|
            opts.banner = "Usage: generation.rb [options]"
            opts.separator ""
            opts.separator "Options:"


            opts.on("--temp c_name", "abcddd") { |abc|
                options.temp = abc
            }


            opts.separator ""
            opts.on_tail("-h", "--help", "Show this message") {
                puts opts
                exit
            }

            opts.parse!(args)
            return options

        end
    end


    inputOpts = parse(ARGV)
Run Code Online (Sandbox Code Playgroud)

Mar*_*pka 11

您应该OpenStruct手动需要来源:

require 'ostruct'
Run Code Online (Sandbox Code Playgroud)