8 Stimmen

i18n-0.6.0 konnte in keiner der Quellen gefunden werden

Ich habe gerade ein Upgrade von Rails 3.0.3 auf 3.2.1 durchgeführt. Das Upgrade verlief reibungslos auf meinem Mac, aber ich habe Probleme, eine 3.2.1 Instanz meiner App auf meinem Ubuntu-Produktionsserver laufen zu lassen. Der Fehler, den ich bekomme, ist dieser:

Could not find i18n-0.6.0 in any of the sources (Bundler::GemNotFound)

Offensichtlich hatten auch andere Menschen schon einmal dieses Problem. Leider, die Lösung hier löst das Problem für mich nicht. Ich mache sudo bundle install scheint keinen Unterschied zu machen.

Ich fand auch diese Stelle aber ich verstehe nicht, was genau der Auftraggeber getan hat, um das Problem zu lösen.

Es gibt diese Stelle aber das Problem des Auftraggebers hat sich irgendwie von selbst gelöst.

Und ich habe die i18n gem installiert:

$ gem list | grep i18n
i18n (0.6.0, 0.5.0)

Ich habe keine Ahnung, was falsch sein könnte. Irgendwelche Ideen?

7voto

draganstankovic Punkte 5106

Ich hatte genau den gleichen Fehler. Verwenden Sie rvm und passenger?

Wenn Sie rvm installiert hatten, bevor Sie mit der Installation von passenger begonnen haben, erhalten Sie nach Abschluss der passenger-Installation Anweisungen zur Aktualisierung der apache-Konfiguration, die in etwa so lauten:

LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p125@global/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p125@global/gems/passenger-3.0.11
PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p125@global/ruby

Ich habe passenger mit dem globalen gemset installiert, aber später habe ich ein anderes gemset erstellt, das ich für meine Anwendung verwendet habe (nennen wir dieses neue gemset 'foo').

Die Lösung, die bei mir funktionierte, war, in der 3. Zeile "global" in "foo" zu ändern:

PassengerRuby /usr/local/rvm/wrappers/ruby-1.9.3-p125@foo/ruby

5voto

Keith Punkte 2598

bundle install --deployment hat für mich funktioniert.

1voto

d3vkit Punkte 1832

Eine .rvmrc-Datei in der Wurzel Ihrer Anwendung löst dieses Problem. Über rvm-Dokumentation :

# my-app-name/.rvmrc
if [[ -s "/Users/sutto/.rvm/environments/ree-1.8.7-2010.02@my-app-name" ]] ; then
  . "/Users/sutto/.rvm/environments/ree-1.8.7-2010.02@my-app-name"
else
  rvm --create use  "ree-1.8.7-2010.02@my-app-name"
fi

Ersetzen Sie ggf. durch den richtigen Benutzer, die richtige Ruby-Version und das richtige Gemset. (Linux-Benutzer haben wahrscheinlich home/username/.rvm...)

Fügen wir nun die setup_load_paths.rb hinzu, damit der Passagier die richtigen Pfade hat (hier sollte es nichts zu ändern geben):

# my-app-name/config/setup_load_paths.rb
if ENV['MY_RUBY_HOME'] && ENV['MY_RUBY_HOME'].include?('rvm')
  begin
    require 'rvm'
    RVM.use_from_path! File.dirname(File.dirname(__FILE__))
  rescue LoadError
    raise "RVM gem is currently unavailable."
  end
end

# If you're not using Bundler at all, remove lines bellow
ENV['BUNDLE_GEMFILE'] = File.expand_path('../Gemfile', File.dirname(__FILE__))
require 'bundler/setup'

1voto

Sebastian Neira Punkte 564

Ich hatte das gleiche Problem, und ich erkannte, dass ich jRuby zu rake (ich war mit RVM) verwenden. Mit Ruby ging es ohne ein Problem :)

Stellen Sie daher sicher, dass Sie Ruby und nicht jRuby verwenden. Nur für den Fall, dass Sie auch RVM verwenden, benutzen Sie:

rvm list

Um die Liste aller installierten Rubine zu erhalten und

rvm use ruby-...

Um sie auszuwählen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X