为什么Gemfile为宝石

时间:2012-06-21 22:09:06

标签: ruby-on-rails ruby

这是rspec-expectations的Gemfile。

source "http://rubygems.org"

gemspec

%w[rspec rspec-core rspec-expectations rspec-mocks].each do |lib|
  library_path = File.expand_path("../../#{lib}", __FILE__)
  if File.exist?(library_path)
    gem lib, :path => library_path
  else
    gem lib, :git => "git://github.com/rspec/#{lib}.git"
  end
end

### deps for rdoc.info
gem 'yard',          '0.8.0', :require => false
gem 'redcarpet',     '2.1.1'
gem 'github-markup', '0.7.2'

platforms :jruby do
  gem "jruby-openssl"
end

eval File.read('Gemfile-custom') if File.exist?('Gemfile-custom')

This is .gemspec

如您所见.gemspec仅对diff-lcs定义了一个依赖项。这进一步validated by rubygems page

我的问题是Gemfile的用途是什么。我知道bundler使用它。但为了什么?

1 个答案:

答案 0 :(得分:0)

Gemfile用于rspec贡献者的开发依赖项。它不附带gem,但它抓取gemspec deps,因此我们不必重复Gemfile中的deps。有意义吗?