微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

我试图使用 ruby的optionparse来解析我的ruby脚本的参数.问题是当我像这样运行脚本时
bundler exec ruby​​ generation.rb –help
我收到了错误
“未初始化的常量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)

解决方法

您应该手动需要OpenStruct源:
require 'ostruct'

原文地址:https://www.jb51.cc/ruby/265171.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐