1

私はWindows7マシンでレールを実行していて、RVMとしてpikを使用しています。

現在ruby1.9.3をインストールしていますが、ruby1.9.2を必要とするプロジェクトがあります。

したがって、pikを使用して、次のコマンドを実行しますgitbash

  1. pik 192
  2. ruby -v

ルビー1.9.2p180(2011-02-18)[i386-mingw32]

  1. rails server

sh.exe ":rails:コマンドが見つかりません

ただし、pik 193を使用すると、サーバーが実行されていることを確認できます。pik 192でgemリストを実行しても、ローカルgemは表示されませんが、pik193では多くのgemが表示されます。

これらの2つのバージョン間で宝石を「共有」するにはどうすればよいですか、それともリスクの少ないより良いオプションがありますか?

4

1 に答える 1

1

インストール間でgemを共有するには、2つのインストールに共通の場所にgemをインストールする必要があります。

デフォルトでは、RubyonWindowsはRubyのディレクトリ内にgemをインストールします。

これを確認するには、次のようにします。

gem env gemdir

GEM_HOME両方のインタプリタの共通の場所にインストールするには、環境変数を次のような特定のディレクトリに設定する必要があります。C:\gems

SET GEM_HOME=C:\gems
gem env gemdir

binまた、ディレクトリをPATH:に追加する必要があります。

SET PATH=C:\gems\bin;%PATH%

これにより、gems実行可能ファイルを使用できるようになります。

ただし、Ruby 1.9.2と1.9.3は互換性があると述べていますが、一部のgemの一部であるコンパイル済みC拡張機能には当てはまらない場合があることに注意してください。

Ruby 1.9.3では、1.9.2では使用できず、1.9.3でコンパイルされたgemをRuby1.9.2にロードすると問題が発生する可能性がある特定のAPIレベルの関数が導入されました。

これらの違いにより、セグメンテーション違反が発生したり、場合によっては奇妙なアプリケーションがクラッシュしたりする可能性があります。

推奨されていませんので、自己責任で使用してください。

お役に立てば幸いです。

于 2013-03-02T00:23:44.547 に答える