4

これは奇妙なものです。rake を実行してテストを実行するとこのエラーが発生しますが、移行時には発生しません。私は RVM を実行しています。以下のシェル ダンプから必要な情報が得られます。

どんな助けでも大歓迎です。私はこの問題を抱えている他の数人を見てきましたが、私 (または彼ら) にとって有効な解決策はまだありません。

ありがとう。

$ rake
Could not find rake-0.9.2.2 in any of the sources
Run `bundle install` to install missing gems.
Could not find rake-0.9.2.2 in any of the sources
Run `bundle install` to install missing gems.
Errors running test:units, test:functionals, test:integration!



$ ruby -v
    ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-darwin11.4.0]
    $ rails -v
    Rails 3.1.6

$ more .rvmrc 
rvm ruby-1.9.3-p194@...
$ rake db:rollback
==  AddAllLocationsToAlert: reverting =========================================
-- remove_column(...
   -> 0.0320s
==  AddAllLocationsToAlert: reverted (0.0321s) ================================

- - - - 編集::::

その後、最新の Rails - 3.2.6 にアップグレードしました。「bundle exec」を使用しても、エラーは引き続き発生します。(これは 3.2.6 にとって新しいことではありません - 私はまだ 3.1 の下で問題を抱えていました) ただし、未定義のメソッドは新しいものです。

Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
$ bundle exec rake
Could not find rake-0.9.2.2 in any of the sources
Run `bundle install` to install missing gems.
Could not find rake-0.9.2.2 in any of the sources
Run `bundle install` to install missing gems.
Errors running test:units! #<NoMethodError: undefined method `[]' for nil:NilClass>
Errors running test:functionals! #<RuntimeError: Command failed with status (7): [/Users/ben/.rvm/rubies/ruby-1.9.3-p194/bin...]>
Errors running test:integration! #<RuntimeError: Command failed with status (7): [/Users/ben/.rvm/rubies/ruby-1.9.3-p194/bin...]>

要求に応じて、私の Gemfile:

source 'http://rubygems.org'

gem 'rails', '3.2.6'

group :assets do
  gem 'sass-rails', "  ~> 3.2.5"
  gem 'coffee-rails', "~> 3.2.1"
  gem 'uglifier', '>= 1.2.6'
end

gem 'jquery-rails'

gem 'rake'
gem "mysql2"

gem "squeel"
gem 'tinymce-rails'
gem 'dynamic_form'

gem 'will_paginate'
gem 'devise'
gem 'whitelist'
gem 'rmagick'
gem 'json'
gem 'paperclip'
gem 'acts_as_list', :git => 'https://github.com/swanandp/acts_as_list'
gem 'htmlentities'
gem 'formtastic'
# Bundle gems for the local environment. Make sure to
# put test-only gems in this group so their generators
# and rake tasks are available in development mode:
# group :development, :test do
#   gem 'webrat'
# end
4

2 に答える 2

3

gem 'rake', ">=0.9.2" # Gemfile に

それから

$ バンドル インストール

それから

$ bundle exec rake

上記が機能しない場合:

$ rvm all do gem install rake -v 0.9.2.2#すべての Ruby バージョンに rake をインストール

その後、レーキを再度実行します

于 2013-03-11T10:50:14.613 に答える
0

bundler を使用している場合 (そして Rails を使用している場合は、おそらく使用しているでしょう)、常に次のように rake を実行します。

bundle exec rake

これにより、Gemfile で指定された gem が取得されます。

于 2012-07-24T10:09:42.890 に答える