it-swarm.com.de

Rails (> = 0) unter [] (Gem :: LoadError) konnte nicht gefunden werden

Nach der Installation von rvm, dem Aktualisieren der .gmrc-Datei, dem Aktualisieren von rubygems und dem Ausführen von gem install Rails -v ">=3.1.0rc", scheint mir jetzt ein komplettes Durcheinander zu bestehen:

$ Rails -v
/usr/local/lib/site_Ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find Rails (>= 0) amongst [] (Gem::LoadError)
    from /usr/local/lib/site_Ruby/1.8/rubygems/dependency.rb:256:in `to_spec'
    from /usr/local/lib/site_Ruby/1.8/rubygems.rb:1182:in `gem'
    from /var/lib/gems/1.8/bin/Rails:18

[email protected]:~$ gem env

RubyGems Environment:
  - RUBYGEMS VERSION: 1.6.2
  - Ruby VERSION: 1.9.2 (2011-02-18 patchlevel 180) [i686-linux]
  - INSTALLATION DIRECTORY: /home/myhome/gems
  - Ruby EXECUTABLE: /home/myhome/.rvm/rubies/Ruby-1.9.2-p180/bin/Ruby
  - EXECUTABLE DIRECTORY: /home/myhome/gems/bin
  - RUBYGEMS PLATFORMS:
    - Ruby
    - x86-linux
  - GEM PATHS:
     - /home/myhome/gems
     - /usr/lib/Ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - "gemhome" => "/home/myhome/gems"
     - "gempath" => ["/home/myhome/gems", "/usr/lib/Ruby/gems/1.8"]
  - REMOTE SOURCES:
     - http://rubygems.org/
50
rigyt

Ich musste Sudo gem install bundler, damit es wieder funktioniert.

32
Ace Suares

Ich hatte ein ähnliches Problem. Nicht sicher, ob dies Ihnen hilft, aber Sie könnten versuchen, Gems mit rvmsudo gem install [gemname] zu installieren, anstatt nur gem install [gemname] oder Sudo gem install [gemname] zu verwenden.

Ich versuche das wegen der Upvotes etwas zu erklären:
Dies ist im Grunde ein Pfadproblem. Wenn Sie Gems über gem install einrichten, befinden sie sich höchstwahrscheinlich in einem anderen Verzeichnis (z. B. /usr/local/), verglichen mit über Bundler eingerichteten Gems (wo Sie es mit --path überschreiben können). Die Verwendung von Sudo kann sie auch in einem anderen Verzeichnis einrichten, da Sudo eine Subshell startet, die dann eine andere Umgebung hat. Deshalb haben Sie rvmsudo.

Wenn Sie die Unterschiede sehen möchten, vergleichen Sie $PATH, $GEM_HOME, $GEM_PATH und $BUNDLE_PATH beim direkten Echo mit Sudo und mit rvmsudo.

85
pduersteler

Ich habe ein ähnliches Problem wie dieses. Möglicherweise gibt es ein kompatibles Problem von rvm ..__, das durch Aktualisieren von rvm auf die neueste Version behoben wurde: 

curl -L https://get.rvm.io | bash -s stable --Ruby

Dann sollten Sie rvm neu laden oder einfach ein neues Terminalfenster öffnen ..__ Dann habe ich den Bundler 'gem install bundler' neu installiert und wie üblich 'bundle install' ausgeführt

6
Huy Thai
rvm rubygems current

hat den Trick für mich gemacht.

5
Sv1

entferne zuerst Ruby dann

Sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

um alle benötigten Bibliotheken zu installieren, können Sie Ruby und Rails installieren

rvm install 1.9.3
rvm --default use 1.9.3
rvm gem install Rails
1
naiteluo

Ich hatte die gleiche Meldung, als ich versuchte, einen Controller zu generieren, nachdem IntelliJ IDEA und das zugehörige Plugin für Rail Dev installiert wurden. Ich habe gerade aus meinem App-Verzeichnis die Bundle-Installation ausgeführt und konnte dann wieder Controller generieren. 

0

Ich weiß, dass dies eine wirklich alte Frage ist, aber ich habe vor kurzem beschlossen, zu RVM auf einem Server zu wechseln, den ich vor einiger Zeit eingerichtet hatte, und hatte das gleiche Problem, bei dem Edelsteine ​​an der falschen Stelle installiert wurden und es alles durcheinander brachte.

Nach ein paar Stunden durchforstetem SO habe ich schließlich herausgefunden, dass ich in meiner .gemrc-Datei in meinem Stammordner zuvor die gemhome: and gempath:-Variablen eingerichtet hatte und sie sich mit dem gesamten System befassten.

Nachdem ich diese Linien entfernt hatte, funktionierten alle meine Edelsteine.

Ich dachte nur, ich würde meine Antwort posten, falls jemand in derselben Position wäre.

0
doz87