Hinzufügen neuer task-Abhängigkeiten auf gebaut-in-SBT-Aufgaben?
Ist es möglich, zu überschreiben oder zu modifizieren built-in-SBT-Aufgaben (wie z.B. kompilieren) abhängen, benutzerdefinierte Aufgaben in meinem eigenen zu Bauen.scala? Überschreiben z.B. "compile" direkt ist das nicht möglich, da es definiert wurde, mit lazy val und sich so auf super.kompilieren Sie strahlt eine compiler-Fehlermeldung "das super kann nicht verwendet werden, auf faulen Wert".
- Mögliche Duplikate für SBT 0.13 stackoverflow.com/q/8554992/1305344
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da diese Frage wird angezeigt, wenn Sie Googeln, wie hinzufügen einer Abhängigkeit in der SBT und den aktuellen Antworten sind veraltet, wie von 0,13.x und entfernt in 1.0, hier ist die aktualisierte Antwort, vorausgesetzt, dass
printAction
ist die Aufgabe, diecompile
abhängen sollte:(Compile /compile) := ((Compile /compile) dependsOn printAction).value
Update: Siehe arussell84 die Antwort für eine moderne Art, dies zu tun
Sollten Sie in der Lage sein, es zu tun mögen dieses:
in einem .sbt-Datei:
Wo jruby ist eine Aufgabe, die Schlüssel, die Sie definiert haben, in ein Projekt oder so etwas.scala-Datei:
Auch dies ist nicht Teil Ihrer Frage, aber Sie können einfach anrufen regulären Scala-code:
stage << stage dependsOn jruby
Antwort selbst: http://code.google.com/p/simple-build-tool/wiki/ProjectDefinitionExamples#Insert_Task_Dependency sagt die Antwort:
Wenn Sie ältere 0.7.x SBT-Versionen können Sie dies tun:
In der
base_dir/project/
Ordner erstellen Sie eine Dateibuild.sbt
und setzenlibraryDependencies += ...
es.Dass die idiomatischen SBT Weg, um Ihren build "build project", auch bekannt als "Meta-Build".