首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >红宝石OptionParser抛出ArgumentError

红宝石OptionParser抛出ArgumentError
EN

Stack Overflow用户
提问于 2014-08-26 18:06:12
回答 1查看 109关注 0票数 0

这是我第一次使用OptionParser,我得到了这个错误:

/Users/jay/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mechanize-> 2.7.3/lib/mechanize/http/agent.rb:651:in resolve': absolute URL needed (not -v) (ArgumentError)from /Users/jay/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mechanize-2.7.3/lib/mechanize/http/agent.rb:223:infetch‘from /Users/jay/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/mechanize-2.7.3/lib/mechanize.rb:440:in get' from /Users/jay/Code/linkedin-scraper/lib/myModel-scraper/profile.rb:20:ininitialize’from ./bin/myModel-scraper:6:in new' from ./bin/myModel-scraper:6:in

垃圾箱:

代码语言:javascript
复制
require 'rubygems'
require 'optparse'

opts = OptionParser.new do |opts|
 opts.on_tail("-v", "--version", "Show version") { puts myModel::Scraper::VERSION; exit }
 opts.parse!
end

Lib/版本:

代码语言:javascript
复制
module myModel
  module Scraper
    VERSION = '0.1.2'
  end
end

我想我做错了,有人能解释一下这里发生了什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-26 18:14:18

我通常会写一个这样的OptionParser块:

代码语言:javascript
复制
OptionParser.new do |opts|
  opts.on_tail("-v", "--version", "Show version") { puts myModel::Scraper::VERSION; exit }
end.parse!

我可能会用on代替on_tail

代码语言:javascript
复制
opts.on("-v", "--version", "Show version") { puts myModel::Scraper::VERSION; exit }

但我理解你为什么希望它出现在帮助列表的末尾。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25512371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档