2011-10-06 6 views
54

Zaczynam używać sbt zbudować mój kod Scala (i obsługi zależności). O ile wiem, jeśli używamSBT: Uruchom polecenie "uruchom" z głównej klasy projektu innego niż domyślny

$ sbt run <args> 

w linii poleceń, to będzie działać główna klasa głównego projektu.

Czy można "uruchomić" w dowolnym innym projekcie z wiersza poleceń, tj. Nie w trybie sesji interaktywnej? (Myślę o czymś, co może wyglądać $ sbt project <proj> run <args> lub cokolwiek ...)

Co chciałbym zrobić w trybie interaktywnym jest taka:

$ sbt 
> project <projectname> 
> run <args> 

To wydaje się być dość proste, ale nie mogę znajdź dokumentację opisującą to zachowanie. Wskazówki będą mile widziane ...

+0

jak używać określić główny projekt? –

Odpowiedz

80

Po prostu trzeba zacytować każde polecenie (jak w drugim przykładzie on this page), więc w Twoim przypadku to będzie:

$ sbt "project foo" "run arg1 arg2" 
+0

Skarbie, byłem tak blisko :) Wielkie dzięki! – fgysin

33

$ sbt foo/run arg1 arg2 pracować również

+1

Myślę, że jest to bardziej natywny sposób niż podwojenie polecenia w większości głosowanych odpowiedzi – Oleg

8

pracował dla mnie:

$ sbt "run someNumber" 

również może to być pomocne:

def main(args: Array[String]) { 
    val n = args(0).toInt 
} 
Powiązane problemy