【问题标题】:Invalid gemspec in ...: wrong number of arguments (0 for 1+)... 中的无效 gemspec:参数数量错误(0 表示 1+)
【发布时间】:2015-09-01 22:56:18
【问题描述】:

在我第一次尝试创建 gem 时,我遇到了这个错误

Invalid gemspec in [rulers.gemspec]: wrong number of arguments (0 for 1+)

当我尝试构建它时 (gem build rulers.gemspec)。

我已经把gemspec文件的代码贴在下面了。

我在哪里出错了?

# coding: utf-8
lib = File.expand_path('../lib', __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require 'rulers/version'

Gem::Specification.new do |spec|
  spec.name          = "rulers"
  spec.version       = Rulers::VERSION
  spec.authors       = ["Noffica"]
  spec.email         = ["email@domain.com"]

  spec.summary       = %q{An attempt to create a Rails-like framework...}
  spec.description   = %q{... written in Ruby.}
  spec.homepage      = ""

  # Prevent pushing this gem to RubyGems.org by setting 'allowed_push_host', or
  # delete this section to allow pushing this gem to any host.
  if spec.respond_to?(:metadata)
    spec.metadata['allowed_push_host'] = ""
  else
    raise "RubyGems 2.0 or newer is required to protect against public gem pushes."
  end

  spec.files         = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
  spec.bindir        = "exe"
  spec.executables   = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
  spec.require_paths = ["lib"]

  spec.add_development_dependency "bundler", "~> 1.10"
  spec.add_development_dependency "rake", "~> 10.0"
  spec.add_development_dependency "rspec"

  gem.add_runtime_dependency "rack"
end

【问题讨论】:

  • 你得到错误的行号吗?
  • 很遗憾,没有行号。
  • 一个愚蠢的错误。所需要的只是睡个好觉。

标签: ruby-on-rails gem gemspecs


【解决方案1】:

倒数第二行应该是

spec.add_runtime_dependency "rack"

参数是spec,而不是gem

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-28
    • 1970-01-01
    • 1970-01-01
    • 2015-09-12
    • 2011-07-05
    • 1970-01-01
    相关资源
    最近更新 更多