4

3.2.8のRailsアプリでCapistranoを使用するときはいつでも、RVMとそのRailsバージョンのgemsetを使用してgemを使用しようとしています。

次のエラーが発生します:どのソースにもrake-10.0.3が見つかりませんでした(Bundler :: GemNotFound)

これはエラーの出力です(私はファイルをログに記録しました):

/home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/spec_set.rb:90:in `block in materialize': Could not find rake-10.0.3 in any of the sources (Bundler::GemNotFound)
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/spec_set.rb:83:in `map!'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/spec_set.rb:83:in `materialize'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/definition.rb:113:in `specs'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/definition.rb:158:in `specs_for'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/definition.rb:147:in `requested_specs'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/environment.rb:23:in `requested_specs'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/runtime.rb:11:in `setup'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler.rb:116:in `setup'
    from /home/some_user/.rvm/gems/ruby-1.9.3-p286@global/gems/bundler-1.2.1/lib/bundler/setup.rb:17:in `<top (required)>'
    from /home/some_user/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `require'
    from /home/some_user/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `rescue in require'
    from /home/some_user/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
    from /home/some_user/some_user/config/boot.rb:6:in `<top (required)>'
    from /home/some_user/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /home/some_user/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from script/rails:5:in `<main>'

Rake 10.0.2を使用しているときにもエラーが発生しました(バンドルを更新してRake 10.0.3を取得し、テスト用に残しました)。また、gemset(@ r328と呼ばれ、/ home / some_user / .rvm / gemsにあります)を検索する必要があると思われるときに、バンドラーが@globalを検索していることに気付きました。

.rvmrc(プロジェクト内にあります)

source ~/.profile
rvm use 1.9.3@r328
rvm_trust_rvmrcs_flag=1

。プロフィール

if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
    . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function

schedule.rb(テスト用)

set :output, "#{path}/log/cron.log"

every 1.minute do
  runner "MenuOrder.send_resume(2)"
end

deploy.rb

set :whenever_command, "bundle exec whenever"
require "whenever/capistrano"

gemリストの出力

actionmailer (3.2.8)
actionpack (3.2.8)
active_utils (1.0.5)
activeadmin (0.5.0)
activemerchant (1.29.3, 1.28.0)
activemodel (3.2.8)
activerecord (3.2.8)
activeresource (3.2.8)
activesupport (3.2.8)
arbre (1.0.1)
arel (3.0.2)
authorize-net (1.5.2)
bcrypt-ruby (3.0.1)
bourbon (3.0.1, 2.1.2, 2.1.1)
builder (3.0.4)
bundler (1.2.1)
capistrano (2.13.5)
carrierwave (0.8.0, 0.7.1, 0.7.0)
chronic (0.9.0)
cocaine (0.4.2)
coffee-rails (3.2.2)
coffee-script (2.2.0)
coffee-script-source (1.4.0)
daemon_controller (1.1.0)
daemons (1.1.9)
delayed_job (3.0.4)
delayed_job_active_record (0.3.3)
devise (2.2.0, 2.1.2)
erubis (2.7.0)
execjs (1.4.0)
fastercsv (1.5.5)
fastthread (1.0.7)
formtastic (2.2.1)
has_scope (0.5.1)
highline (1.6.15)
hike (1.2.1)
i18n (0.6.1)
inherited_resources (1.3.1)
journey (1.0.4)
jquery-rails (2.1.4, 2.1.3)
json (1.7.6, 1.7.5)
kaminari (0.14.1)
mail (2.4.4)
meta_search (1.1.3)
mime-types (1.19)
money (5.1.0)
multi_json (1.5.0, 1.3.7, 1.3.6)
mysql2 (0.3.11)
net-scp (1.0.4)
net-sftp (2.0.5)
net-ssh (2.6.2)
net-ssh-gateway (1.1.0)
nokogiri (1.5.6, 1.5.5)
orm_adapter (0.4.0)
paperclip (3.4.0, 3.3.1)
passenger (3.9.1.beta, 3.0.19, 3.0.18)
polyamorous (0.5.0)
polyglot (0.3.3)
rack (1.4.3, 1.4.1)
rack-cache (1.2)
rack-raw-upload (1.1.1, 1.1.0)
rack-ssl (1.3.2)
rack-test (0.6.2)
rails (3.2.8)
railties (3.2.8)
rake (10.0.3, 10.0.2, 0.9.2.2)
rdoc (3.12)
recaptcha (0.3.4)
responders (0.9.3)
rich (1.4.1, 1.3.1)
rmagick (2.13.1)
rubygems-bundler (1.1.0)
rvm (1.11.3.5)
sass (3.2.5, 3.2.3, 3.2.1)
sass-rails (3.2.5)
sprockets (2.1.3)
thor (0.16.0)
tilt (1.3.3)
treetop (1.4.12)
tzinfo (0.3.35, 0.3.34)
uglifier (1.3.0)
warden (1.2.1)
whenever (0.8.1)

バンドルの更新、Gemfile.lockの削除、バンドルのインストール、すべてのrake gem(10.0.3および10.0.2)のアンインストール、bundle installを使用したgemのインストールを試しましたが、何も機能しませんでした。

4

5 に答える 5

10

使用できます

bundle install --path vendor/cache

これがお役に立てば幸いです。

于 2013-01-10T06:39:10.613 に答える
3

問題を解決するために私がしたことは少しトリッキーでした:

  1. Rakeのすべてのバージョンを削除します
  2. Gemfile.lockを削除します
  3. バンドルインストールを実行する
  4. 次のコマンドを使用してRakeを手動でインストールします:gem install rake --version = 10.0.2

現在は機能していますが、何らかの理由でログファイルが書き込まれません。修正して更新を投稿します。

于 2013-01-10T20:18:25.317 に答える
2

ちょうどbundle install私のために働いた。Rubyをアップデートしたのに、その後バンドラーを実行するのを忘れたからだと思います。

于 2014-10-08T09:54:02.860 に答える
0

これは、rakeタスクを実行しているとき、またはcronを使用するときにrakeタスクを設定しているときに発生するエラーですか?それがどんな宝石だと思うなら、Capistranoが実際にいくつかの内部を変更し、ゆっくりと修正しているので、動作しないときはいつでも多くの議論があったことを私は知っていますが、彼らは宝石の更新をリリースしていません。

それらの問題を検索して、自分に関連するものを見つけることができるかどうかを確認してください。

https://github.com/javan/whenever/issues

于 2013-01-10T06:38:13.750 に答える
0

この問題は、実際には、 BUNDLE_PATHがrvm gemset設定をオーバーライドし、 bundleinstallを実行するたびにダウンロードしたファイルを他の場所に保存することが原因です。これを解決するには、.bundleフォルダーを削除するか、.bundle/configからBUNDLE_PATH行を削除します。それが完了したら、バンドルインストールを再実行するだけで、準備は完了です。

于 2013-10-23T20:47:19.907 に答える