Я определил простую задачу rake для запуска моих тестов ruby, но проблема в том, что rake не загружает гем с версией, определенной в Gemfile. Получается Gem::LoadError
. Есть ли способ сообщить рейку, какую версию гема использовать?
Вот драгоценные камни, установленные в моей системе:
addressable (2.2.6, 2.2.4)
bundler (1.0.15)
libarchive (0.1.2)
nokogiri (1.5.0)
rake (0.9.2, 0.8.7)
rdf (0.3.3)
А это мой GemFile:
source :rubygems
gem 'nokogiri', '1.5.0'
gem 'rdf', '0.3.3'
gem 'addressable', '2.2.4'
gem 'libarchive', '0.1.2'
Вот грабли:
require 'rake/testtask'
task :default => [:test]
desc "Run basic tests"
Rake::TestTask.new do |test|
test.libs << "test"
test.test_files = Dir["test/test_*.rb"]
test.verbose = true
end
И это исключение, которое я получаю:
/Users/dummy/.rvm/rubies/ruby-1.9.2-head/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:1612:in `raise_if_conflicts': Unable to activate rdf-0.3.3, because addressable-2.2.6 conflicts with addressable (= 2.2.4) (Gem::LoadError)
Я могу решить проблему, удалив addressable 2.2.6
, но мне нужна никогда не версия этого гема для другого проекта.
Другим решением может быть использование rvm gemsets. Но разве просто невозможно запустить rake с заданной спецификацией Gemfile?
Спасибо