2

私は Ubuntu 12.10 を使用しており、rbenv と bundler を使用してプロジェクトを立ち上げて実行しようとしています。

apt リポジトリから rbenv を正常にインストールし、ruby-build を使用して必要なバージョンの ruby​​ をインストールしました。

実行すると、apt リポジトリのインストールに付属していると思わwhich gemれるグローバルが取得されます。/usr/bin/gemただし、rbenv which gem を実行すると、適切なローカル gem が取得されます/home/kasuko/.rbenv/versions/1.9.2-p290/bin/gem

ただし、実行するgem install bundlerと、「許可が拒否されました - /var/lib/gems」という許可に関するエラーが表示され、グローバルな宝石を使用していると思われます。

したがって、実行する/home/kasuko/.rbenv/versions/1.9.2-p290/bin/gem install bundlerと、バンドラーが正常にインストールされます

私の中にrbenv init行があり~/.zshrc.local (which is sourced in my ~/.zshrc)、更新されたパスを取得している "/home/kasuko/.rbenv/shims:/home/kasuko/.bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"ので、正しくインストールされていると確信しています。

では、なぜ私の rbenv シムが使用されていないのでしょうか?

ありがとうカスコ

4

1 に答える 1

1

どちらが実行されているかわからない場合は、rubygems のバージョン、対応する ruby​​ 実行可能ファイル、gem パス、その他の優れた機能など、実行中の のバージョンに関する有用な情報が表示される which をgem試してください。gem envgem

あなたのPATHは正しいようです。hash -r念のため、シェルの実行可能パスのキャッシュをクリアするために実行してみてください。

これは、実行する実際の実行可能ファイルを決定するために rbenv を延期していることを示しますwhich gem/home/kasuko/.rbenv/shims/gem

その後、実行する必要がある場合がありますrbenv rehash。これは、実行可能ファイル (bundler、rake など) を含む新しい gem をインストールするたびに実行する必要があります。正しい実行可能ファイルを指すようにすべての shim が更新されます。

于 2013-01-15T23:05:15.110 に答える