Humane Führung für sbt DSL

9

Ich muss noch etwas tun, das mit sbt ganz einfach ist und nicht viel Zeit verschwenden. Die offizielle Dokumentation ist storyähnlich und zyklisch, ganz und gar nicht hilfreich, um das DSL zu streiten. Das DSL ist insgesamt undokumentiert, außer seinem Scaladoc. Z.B. Sehen Sie sich Ссылка als Beispiel an.

Kann jemand ein humanes Tutorial oder eine Referenz empfehlen, die die Themen des letzten Links behandelt, oder besser noch, bieten Sie eine klare, konstruktive Beschreibung für Folgendes:

  1. Schlüssel

  2. Einstellungen

  3. Aufgaben

  4. Bereiche

  5. Wichtige Betreiber und Methoden der DSL, die für die obigen Entitäten / Klassen relevant sind

  6. Geben Sie out-of-the-box-Objekte an, mit denen in der DSL interagiert werden kann

  7. Wie man Funktionen im Gegensatz zu gewöhnlichem Scala-Code definiert und aufruft, und sind .scala-Builddefinitionen wirklich veraltet?

  8. Wie man Builddefinitionen über mehrere Dateien verteilt, anstatt einen großen, langen Stapel Code in build.sbt zu haben (oder wie man eine .sbt-Datei strukturiert, die man noch einen Monat später lesen kann).

    >
  9. Mehrfachprojekt .sbt vs. nacktes Projekt .sbt - wie siehst du den Unterschied?

  10. Gibt es irgendeine ScalaIDE-Unterstützung für sbt-Dateien?

Bitte konzentrieren Sie sich nur auf sbt 0.13.x, da alles andere alt wird ...

    
matanster 29.01.2015, 20:09
quelle

1 Antwort

1

1- Referenzen, die ich neben dem offiziellen Dokument kenne, empfehle ich Ihnen blog All Jazz mit diesen ausgezeichneten Artikeln:

7- Es ist mir egal, ob project/*.scala Dateien veraltet sind, aber zum Definieren von Einstellungen und Aufgaben *.sbt Syntax ist leichter. Ich verwende *.scala files nur für Code.

8- Ich selbst habe meine build.sbt -Datei in mehrere Dateien aufgeteilt. Alle Dateien im Basisordner mit der Erweiterung .sbt werden zu einer großen Datei zusammengefasst.

Ich musste nur die Definition von settingKey wiederholen, nicht die Implementierung.

Meine *.sbt Dateien sind 62 Kb, und ich halte sie für lesbar. Eine Aufgabe und eine Einstellung können eingebettete Dokumentation enthalten, die ausführlich sein kann.

%Vor%

Mit IDEA kann ich leicht die Struktur sehen und schnell zu jeder Einstellung oder Aufgabe navigieren und deren Implementierung sehen.

Um Rauschen in *.sbt zu vermeiden, schreibe ich es in eine separate project/*.scala -Datei, wenn die Implementierung einer Aufgabe lang ist.

Allgemeiner Code, der in anderen Projekten wiederverwendet werden kann, ich lege ihn in eine separate .scala -Datei.

9- Multiprojekt SBT-Datei.

Es hat einfach mehrere Zeilen wie Thesen:

%Vor%

Es unterscheidet sich nicht sehr von einem einzigen Projekt:

%Vor%

10- IDEA mit seinem Scala-Plugin funktioniert in der Tat gut, um SBT-Dateien zu bearbeiten.
Scala IDE nicht, und das ist der Hauptgrund, warum ich IDEA anstelle von Eclipse verwende.

    
david.perez 01.10.2015 07:16
quelle

Tags und Links