heroku - не может активировать тестовый блок (= 1.2.3, время выполнения), уже активированный тестовый блок-2.3.1.Убедитесь, что все зависимости добавлены в Gemfile - PullRequest
0 голосов
/ 11 августа 2011

Я получаю эту ошибку на heroku .... вот мой gemfile ... что мне делать

source 'http://rubygems.org'

gem 'rails', '2.3.8'
gem 'will_paginate', '2.3.12'
gem 'googlecharts'
# gem 'faker'
gem 'httparty'
gem 'bandsintown'
gem 'itunes-search-api','0.1.0', :path => 'vendor/gems/itunes-search-api-0.1.0'
gem 'i18n', '0.4.2'
gem "giggly", "~> 0.1.2"
gem "ruby-paypal",'0.0.5', :path => 'vendor/gems/ruby-paypal-0.0.5'

group :production do
  gem 'test-unit', "2.3.1"
  gem 'pg'
end


group :development, :test do
  gem 'sqlite3-ruby', '1.2.5', :require => 'sqlite3'
end

Я попытался вытащить gem 'test-unit', "2.3.1" и даже оставить без конкретной версии, и я получил эту ошибку ...

/app/.bundle/gems/ruby/1.9.1/gems/rake-0.9.2/lib/rake/file_utils.rb:84: warning: already initialized constant LN_SUPPORTED
rake/rdoctask is deprecated.  Use rdoc/task instead (in RDoc 2.4.2+)
rake aborted
rake/rdoctask is deprecated.  Use rdoc/task instead (in RDoc 2.4.2+)
rake aborted!
can't activate test-unit (= 1.2.3, runtime), already activated test-unit-2.3.1. Make sure all dependencies are added to Gemfile.
/usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/shared_helpers.rb:108:in `block in cripple_rubygems'

Теперь я получаю эту ошибку

/app/lib/tasks/rspec.rake:1:in `<top (required)>'
test-unit is not part of the bundle. Add it to Gemfile.
/usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/shared_helpers.rb:102:in `block in cripple_rubygems'
/app/lib/tasks/rspec.rake:1:in `<top (required)>'

Я так растерялся ... что делать дальше

Ответы [ 3 ]

1 голос
/ 11 августа 2011

Подводя итог:

  • нет необходимости в испытательной установке в производстве

  • удалите задачу по рейку rspec, так как вы не используете rspec

1 голос
/ 17 января 2013

Для меня эта ошибка:

/app/lib/tasks/rspec.rake:1:in `<top (required)>'
test-unit is not part of the bundle. Add it to Gemfile.

неожиданно началась, когда я пошел поработать над техническим обслуживанием старого проекта.Это было вызвано этой строкой в ​​задаче грабли rspec:

gem 'test-unit', '1.2.3' if RUBY_VERSION.to_f >= 1.9

При возвращении к этому приложению версия Ruby по умолчанию была обновлена ​​до 1.9.Использование RVM для установки значения 1,8 (в моем случае в Jruby) устранило это сообщение и вернуло меня к работе, как раньше без сообщения.

Charles

0 голосов
/ 11 августа 2011

Подобная ошибка может возникнуть, если ваш код загружает некоторые гемы до запуска Bundler, и происходит загрузка другой версии, отличной от указанной в Gemfile и Gemfile.lock Когда Bundler будет запущен позже, он обнаружит, что загружена неправильная версия гема, и выдаст эту ошибку. Решение состоит в том, чтобы убедиться, что Bundler.setup запускается до загрузки любых других гемов. Инструкции о том, как это сделать в Rails 2.3 на веб-сайте комплектующего, приведены ниже:

http://gembundler.com/rails23.html

...