2010-04-24 6 views

Antwort

8

Hinzufügen "require 'rubygems'" ~/.irbrc-Datei schien den Trick zu machen.

3

In meinem Fall war es "Wenn Ihre ~/.irbrc ungültig ist, wird es stillschweigend fehlschlagen." - von Google Suche - gefunden und behoben Fehler in ~/.irbrc, alles funktioniert gut

+1

Hatte das gleiche Problem. Insbesondere, wenn oben irgendwelche "require" -Anweisungen vorhanden sind und diese aufgrund der Bundler-Umgebung nicht funktionieren, wird die gesamte .irbrc-Datei automatisch ignoriert. Lösung: 'begin/rette Exception/end' blockiert alles, was scheitern könnte. –

1

Sie müssen require 'rubygems' hinzufügen, wie jdeseno schrieb.

Wenn Sie auf Rails3 sind und Bundler verwenden, müssen Sie auch das Juwel 'awesome_print' in der Gemfile (in der Entwicklungsgruppe) angeben, damit es funktioniert.

13

Um zu überprüfen, was in .irbrc fehlschlägt, führen Sie einfach .irbrc als normales Ruby-Skript (ruby ~/.irbrc) aus, und Ruby sagt Ihnen, welche Zeile fehlschlägt. Es könnte sich beschweren, dass IRB-Modul fehlt, nur 'Irb' im Skript erforderlich (Sie brauchen nur dies beim Testen, nicht bei der tatsächlichen Ausführung von IRB).

+0

Was für eine ausgezeichnete Lösung :) – superluminary

+0

Yupp, das hat mir definitiv geholfen, meine Situation zu debuggen und zu einer Lösung zu führen. (Ich bin nur verwirrt, dass IRB nicht beschwert hat, wenn Irb geladen wurde, als ein Edelstein fehlte.) –

+0

DIESE. beste Antwort. sollte so markiert sein. –

5

Ihre Rails-Konsole Pry möglicherweise verwenden

Basierend auf den Vorschlägen, dass ~/.irbrc unwirksam sein muss, reduzierte ich meine zu einem einzigen puts "hi", und obwohl es ausgegeben wird, wenn ich irb lief es nicht, wenn ich lief rails console.

Ich bemerkte endlich, dass die Aufforderung pry(main) war. Es stellte sich heraus, dass dieses Rails-Projekt mit dem Juwel pry-rails eingerichtet wurde, also nutzt die Konsole das. Anpassen .pryrc macht den Trick.

Verwandte Themen