Ruby 创业板推送结果为;缺少包元数据“0”;
我正试图把我更新的gem推到rubygems.com上,结果如下Ruby 创业板推送结果为;缺少包元数据“0”;,ruby,rubygems,gemspecs,Ruby,Rubygems,Gemspecs,我正试图把我更新的gem推到rubygems.com上,结果如下 ~/dev/V2/V2GPTI (master) $ gem build v2gpti.gemspec Successfully built RubyGem Name: v2gpti Version: 0.2 File: v2gpti-0.2-universal-darwin-13.gem ~/dev/V2/V2GPTI (master) $ gem push v2gpti.gemspec ERROR: W
~/dev/V2/V2GPTI (master) $ gem build v2gpti.gemspec
Successfully built RubyGem
Name: v2gpti
Version: 0.2
File: v2gpti-0.2-universal-darwin-13.gem
~/dev/V2/V2GPTI (master) $ gem push v2gpti.gemspec
ERROR: While executing gem ... (Gem::Package::FormatError)
package metadata is missing in v2gpti.gemspec
~/dev/V2/V2GPTI (master) $
自上次推送以来,我对gem规范所做的唯一更改是添加一个parseconfig
依赖项。这是我的宝石规格
Gem::Specification.new do |s|
s.name = 'v2gpti'
s.version = '0.2'
s.platform = Gem::Platform.local
s.summary = 'Git commands for integration with Pivotal Tracker'
s.description = 'Provides a set of additional Git commands to help developers when working with Pivotal Tracker'
s.authors = ['Ben Hale', 'Jeff Wolski']
s.email = 'jeff@xxxxxxxxx.com'
s.homepage = 'https://github.com/v2dev/V2GPTI'
s.license = 'Apache-2.0'
s.files = %w(LICENSE NOTICE README.md) + Dir['lib/**/*.rb'] + Dir['lib/**/*.sh'] + Dir['bin/*']
s.executables = Dir['bin/*'].map { |f| File.basename f }
s.test_files = Dir['spec/**/*_spec.rb']
s.required_ruby_version = '>= 1.8.7'
s.add_dependency 'highline', '~> 1.6'
s.add_dependency 'pivotal-tracker', '~> 0.5'
s.add_dependency 'parseconfig', '~> 1.0'
s.add_development_dependency 'bundler', '~> 1.3'
s.add_development_dependency 'rake', '~> 10.0'
s.add_development_dependency 'redcarpet', '~> 2.2'
s.add_development_dependency 'rspec', '~> 2.13'
s.add_development_dependency 'simplecov', '~> 0.7'
s.add_development_dependency 'yard', '~> 0.8'
我是否在gemspec中遗漏了一些内容?不要推送
gemspec
,推送实际构建的gem:
$ gem push v2gpti-0.2-universal-darwin-13.gem
这与您的问题无关,但是为什么您要将
平台
更改为Gem::platform.local
–这是因为.sh
文件吗?这确实是因为这是我第一次创建Gem规范。我刚刚看了一下您的repo,我认为你不需要platform
条目,因为gem是纯Ruby,而且通过包含它,你将它限制在与你在同一平台上的用户:我会尽快尝试这个,我可以把坏的一个拽出来。请看另一个问题。