Scala sbt-Konsole - code-änderungen, die nicht reflektiert in der sbt-Konsole
Ich verwenden, scala sbt-Konsole zu testen, meine Methoden. (Befehle : sbt dann Konsole), Aber die code-änderungen gemacht, die in eclipse oder anderen externen editor, sind nicht immer spiegelt sich in der sbt-Konsole.
Jedes mal, ich habe zu beenden und die Konsole (mit Crt + D) und wieder starten Sie mit Konsole Befehl, um die änderungen zu sehen.
Jeder einen Blick auf dieses problem?
Gibt es irgendwelche Möglichkeiten, um neu zu laden den code von der console?
Ich bin mit Ubuntu 64-Bit,
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht ohne mit so etwas wie JRebel, vor allem, weil Klassendefinitionen könnte brechen so machen Instanzen bereits geladen ist unbrauchbar. Der einzige Vorschlag, den ich habe, ist die Konsole ausführen, mit ~ - Konsole, so dass, wenn änderungen vorgenommen wurden, werden Sie neu kompiliert werden und die Konsole neu eingegeben werden.
Auch wenn Sie regelmäßig ausgeführt wird eine Reihe von Befehlen, die initialCommands sbt-Einstellung konfiguriert die auszuführenden Befehle sofort nach dem Start der Konsole.
exit
es neu kompiliert und wieder in die Konsole.Eine Möglichkeit ist die Verwendung
:restart
in der Konsole - das wird es neu laden und replay alle Befehle, die Sie eingegeben haben, so weit.Für eine bessere Lösung, möchten Sie vielleicht Lesen Sie meine blog-post auf inkrementelle Entwicklung mit JRebel & Scala.
Sollten Sie ändern Sie die sbt-startup-Skript wie dieses:
Beim start der REPL aus dem inneren SBT, zum Beispiel mit dem Befehl:
änderungen an der importierten Klassen reflektiert wird automatisch, ohne die Notwendigkeit zu tun, ein
:replay
oderrestart
REPL - etwas erinnert an das interaktive Lisp-Programmierung.~; compile
.export SBT_OPTS
von Ihrem globalen SBT config-Datei an~/.sbtconfig
:restart
Befehl auf Vanille-sbt. Verlangt das JRebel oder so?