Wie "re-run mit -deprecation for details" im sbt?
Wenn ich kompilieren Scala code ausführen sbt compile
, SBT sagt:
$ sbt compile
...
[warn] there were 5 deprecation warnings; re-run with -deprecation for details
...
Wie mache ich das? (Innerhalb von SBT?)
- Ähnliche Frage (mit der Antwort auf deine Frage) in stackoverflow.com/questions/9415962/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
sbt-shell
Während im sbt-shell (wenn Sie nicht wollen, ändern Sie Ihre
build.sbt
):Aufgrund
in ThisBuild
,set
wendet die Einstellungen auf alle sub-Projekte.Befehlszeile
Könnte man auch ausführen, die oben als einen einzigen Befehl auf der Kommandozeile.
Der trick ist die Verwendung
;
(Semikolon) trennen Kommandos und'
(ticks) um alle;
getrennte Befehle als einziges argument an sbt.in ThisBuild
funktioniert auch genauso gut mit Teilprojekten—aber warum ist das letztere bevorzugt? oder ist es sogar?Fügen Sie diese Einstellung, um Ihre build.sbt-und, wenn Sie ein multi-Modul-Projekt, fügen Sie es zu jedem Projekt-Einstellungen.
Da mal fließt neue Lösungen entstanden. So, jetzt könnte man re-run der scala-compiler ohne Erteilung gesamte Projekt neu erstellen.
Zu installieren, müssen Sie ensime-sbt-plugin:
Nachdem Sie mit der
ensimeCompileOnly
Aufgabe zu kompilieren einer einzelnen Datei. SBT ermöglicht pro-Aufgaben-Einstellungen-Konfiguration, so dass Sie könnte sich ändern, für diese Aufgaben nur:-deprecation
ist eine schreckliche Idee. Ensime ist für die Unterstützung on-the-fly " - Anmerkung in den Editoren. Abgesehen davon, Ensime hat selbst eine Vielzahl von Problemen, die mit einigen Arten von Projekten (die meisten, insbesondere die Verwendung von Makros stark).Dies funktioniert für mich.
Hinweis : wie Es scheint -deprecation funktioniert nicht von sbt-Konsole.
build.sbt
oder von der sbt-shell.