Frage

Ich verwende derzeit den Build -Mechanismus von Ideen mit FSC für die Entwicklung mit Scala. Es ist immer noch etwas langsam und es ist ein Schmerz, den Kompilierungsserver (wieder) zu starten. Viele Menschen hier schlagen SBT zusammen mit der Idee als Build -Tool vor.

Was halten Sie für die Vor- und Nachteile jedes Ansatzes?

War es hilfreich?

Lösung

Ich habe beide versucht und am Ende bevorzuge ich gerade SBT zum Kompilieren.

Nachteile? Ich vermisse es wirklich, durch Kompilierfehler zu klicken und den Code direkt zu beheben, aber ... das Kompilieren in SBT ist einfach viel schneller.

Die nächtlichen Builds des Ideen -Scala -Plugins können in Bezug auf Qualität/Leistung variieren, aber es wird in letzter Zeit immer besser. Das Scala -Plugin kann jetzt eine Reihe von Fehlern kennzeichnen, die ich zum Fangen ausführen müsste. (Zum Beispiel laufe ich nächtlichen Build 0.4.693 und die neuen Methodeninspektionen waren bereits tot hilfreich.)

Mein Rat für das Leben mit SBT in der Befehlszeile: SBT starten und lass es so lange wie möglich interaktiv laufen lassen, um alles zu nutzen, was geladen und geschwächt wird.

SBT -Laufen wird irgendwann umfallen, aber indem Sie ihm mehr Speicher in Ihrem SBT -Wrapper geben, können Sie dies nur selten ermöglichen.

Hier ist der SBT -Launch -Wrapper, der für mich funktioniert.

java -Xms512M -Xmx1500M -XX:MaxPermSize=512m -jar `dirname $0`/sbt-launch.jar "$@"

Mein größtes Problem mit SBT 0.7 ist, dass es häufig zurückgeht und große Dateien neu kompiliert, die nur tangential für den Code erscheinen, den ich tatsächlich geändert habe. (Trotzdem, immer noch schneller als Idea und FSC!)

Gute Nachrichten: SBT 0.9 hat einige großartige Verbesserungen für inkrementelle Kompilierungen. Leider liegt der Migrationspfad von 0,7 auf 0,9 noch in den frühen Tagen. Mark Harrahs Präsentation bei Nescala ist online bei http://www.nescala.org/2011/ wenn Sie interessiert sind.

Nützliche Plugins

  • http://github.com/mpeltonen/sbt-idea - Erstellen und halten Sie Ihr Idea -Projekt einfach mit Ihrem SBT -Projekt synchron
  • http://github.com/orfjackal/idea-sbt-plugin - Lassen Sie sich von der IDEA -Laufprofile für SBT aus der Idee erstellen (ich fand dieses Leiten als SBT in der Kommandozeile im vergangenen Oktober - aber ich sehe, dass Orfjackal sich immer noch entwickelt, also sollte ich es noch einmal geben)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top