2012-06-21 2 views
1

이것은 rspec-expectations 용 Gemfile입니다. 당신이 .gemspec이 diff-lcs에 단 하나의 의존성을 정의에서 볼 수 있듯이왜 보석 용 Gemfile

This is .gemspec

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') 
. 이것은 validated by rubygems page입니다.

제 질문은 Gemfile의 사용법입니다. 번들러가 사용한다는 것을 알고 있습니다. 그러나 무엇을 위해?

+0

종속성을 정의합니다. –

+0

@DaveNewton 내가 언급 한 것처럼 rubygems 페이지는 Gemfile 종속성이 종속성으로 선언되지 않았 음을 보여줍니다. –

답변

0

Gemfile은 rspec 제공자의 개발 의존성을위한 것입니다. 보석과 함께 제공되는 것은 아니지만 gemspec deps를 부여하므로 Gemfile에서 deps를 반복하지 않아도됩니다. 이해가 되니?

+0

아. 여기에있는 키워드는 "개발 의존성"입니다. 따라서 모든 프로덕션 (읽기 런타임) 종속성은 .gemspec로 이동합니다. David : 개발 중에 테스트를 실행하고 있다고합니다. 나는 spec_helper를 보았지만 Bundler에 대한 호출을 보지 못했습니다. 그래서 정확히 어떻게 Gemfile이 당신이 rspec-expecations에서 개발을 할 수 있도록 도와주고 있습니까? 또는 rspec-expectations은 (rspec)라는 더 큰 생태계의 일부이기 때문에 Gemfile은 "rspec rspec-core rspec-expectations rspec-mocks"에 의존합니다. rspec에 대한 모든 작업을 해주셔서 감사합니다. –

관련 문제