5

Rails プロジェクトで Pow と powify gem を使用しています。

今、Ruby のバージョンをアップグレードしようとしています (1.9.3 から 2.0.0 に、RVM を使用しています)。

ruby のバージョンを切り替えるときは、gem の依存関係をすべてインストールし、実行してアクセスしてアプリが正常に動作することを確認しrails sますlocalhost:3000

http://my_app.dev以前は、powでアクセスしてアプリを閲覧していました。アップグレード後、この URL はエラーのために機能しませんBundler::RubyVersionMismatch: Your Ruby version is 1.9.3, but your Gemfile specified 2.0.0

私が試したこと:

  • pow アプリケーションを再作成する
  • 電源サーバーを再起動します
  • パワーサーバーを更新する
  • キルサーバー
  • このエラーをグーグルで検索してください:)

このエラーはまだ存在します。ところで、私は別の Rails アプリを持っています。これは最初は ruby​​ 2.0 を使用し、pow ok で動作します。

4

1 に答える 1

8

.powrcプロジェクトのルート ディレクトリにというファイルを作成します。以下の内容をコピーしてファイルに貼り付けます。

if [ -f "$rvm_path/scripts/rvm" ]; then
  source "$rvm_path/scripts/rvm"

  if [ -f ".rvmrc" ]; then
    source ".rvmrc"
  fi

  if [ -f ".ruby-version" ]; then
    rvm use `cat .ruby-version`
  fi

  if [ -f ".ruby-gemset" ]; then
    rvm gemset use --create `cat .ruby-gemset`
  fi
fi

これにより、Ruby 環境ファイルが参照され、そこから正しいバージョンが選択されます。これが最初の試行でうまくいかない場合は、プロジェクトのルート ディレクトリに.rvmrcまたはファイルがあることを確認してください。.ruby-version

touch tmp/restart.txtアプリケーションを再起動することを忘れないでください。

ソース: https://gist.github.com/nbibler/5307941

于 2013-08-25T17:01:56.210 に答える