web-dev-qa-db-ja.com

gem Rails-Gem :: GemNotFoundExceptionが見つかりません

Ubuntu 10.04、rvmを使用します。最初に、Ruby 1.9.2 with rvm、gem Railsをインストールし、いくつかの新しいプロジェクトを生成して正常に開始しました。すべてが正常に機能していました。別のプロジェクトに変更した後、バンドルインストールコマンドを実行し(出力はOK)、Rails server-エラーが発生します:

Rails s

/home/jacek/.rvm/rubies/Ruby-1.9.2-p318/lib/Ruby/site_Ruby/1.9.1/rubygems.rb:316:in `bin_path': can't find gem Rails ([">= 0"]) with executable Rails (Gem::GemNotFoundException)
from /home/jacek/.rvm/gems/Ruby-1.9.2-p318/bin/Rails:19:in `<main>'

宝石リストRails

*** LOCAL GEMS ***
Rails (3.2.2)

gem env

RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.18
  - Ruby VERSION: 1.9.2 (2012-02-14 patchlevel 318) [i686-linux]
  - INSTALLATION DIRECTORY: /home/jacek/.rvm/gems/Ruby-1.9.2-p318
  - Ruby EXECUTABLE: /home/jacek/.rvm/rubies/Ruby-1.9.2-p318/bin/Ruby
  - EXECUTABLE DIRECTORY: /home/jacek/.rvm/gems/Ruby-1.9.2-p318/bin
  - RUBYGEMS PLATFORMS:
    - Ruby
    - x86-linux
  - GEM PATHS:
     - /home/jacek/.rvm/gems/Ruby-1.9.2-p318
     - /home/jacek/.rvm/gems/Ruby-1.9.2-p318@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

My Path(EXECUTABLE DIRECTORYを含む:/home/jacek/.rvm/gems/Ruby-1.9.2-p318/bin)

/home/jacek/.rvm/gems/Ruby-1.9.2-p318/bin:/home/jacek/.rvm/gems/Ruby-1.9.2-p318@global/bin:/home/jacek/.rvm/rubies/Ruby-1.9.2-p318/bin:/home/jacek/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

私はどんな助けにも感謝します

25
zachar

コマンドbundle installを使用してGEMFILEからgemをインストールする場合、 the bundler docs =。その後、bundlers bundle execコマンドを使用して、バンドルのコンテキストでコマンドを実行できます こちらのドキュメントで概説されているように 。これにより、bundle installを使用してインストールしたgemのバージョンが確実に実行されます。

ドキュメントの概要を提供する Bundlerのホームページ を見ると、次のように記載されています。

場合によっては、実行可能ファイルがシステムにインストールされていて、バンドルと競合するgemをまったく取り込まない場合、バンドルexecなしで実行可能ファイルを実行すると動作する場合があります。

しかし、これは信頼性が低く、かなりの痛みの原因です。動作しているように見えても、将来または別のマシンでは動作しない可能性があります。

コンソールでgem which Railsを実行してから、コンソールでbundle show Railsを実行すると、デフォルトでインストールされるRailsインストール済みのものとは異なりますバンドル用。

rvmおよびRuby管理にgemを使用していると言います。正しく設定されていない可能性があると思います。コンソールでrvm notesコマンドを実行して、OSへのインストールに必要な/推奨されるすべての手順を確実に実行してください。 echo $PATHを理想的に実行する場合、rvmの実行可能ファイルがパスに含まれる最初のものであることを確認する必要があります。これにより、rvmにインストールされたgemが、bundle execのプレフィックスなしで実行しようとしたときに実行されるgemになります。 rvm notesでそれを達成するために必要なヒントが得られない場合は、 RVM Webサイトにインストールするためのドキュメント を注意深く確認してください。

20
Batkins

私にとっては、バンドラーをインストールしたばかりです。これにより、すべてが再び機能するようになります。

gem install bundler --no-ri --no-rdoc

Rubyと$ rvm use --default 2.4.0 例えば

しかし、あなたの問題のためにこれを試してください:

  1. $ gem install bundler

  2. $ gem install Rails

それが役に立てば幸い !

10
rust

以下のコマンドが機能すると思います

gem pristine Rails
0
Jagdish N