2011-10-06 18 views
54

Sto iniziando a utilizzare sbt per compilare il mio codice Scala (e gestire le dipendenze). Per quanto ne so se usoSBT: Avviare una riga di comando 'run' della classe principale di un progetto non predefinito

$ sbt run <args> 

sulla riga di comando questo eseguirà la classe principale del progetto principale.

È possibile "eseguire" all'interno di qualsiasi altro progetto dalla riga di comando, cioè non in modalità sessione interattiva? (Sto pensando a qualcosa che potrebbe assomigliare $ sbt project <proj> run <args> o qualsiasi altra cosa ...)

Che cosa farei in modalità interattiva è questo:

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

Questo sembra essere abbastanza semplice, ma non posso trova tutta la documentazione che descrive questo comportamento. Suggerimenti sarebbe molto apprezzato ...

+0

come utilizzare specificare il progetto principale? –

risposta

80

È sufficiente citare ogni comando (come nel secondo esempio on this page), così nel tuo caso sarebbe:

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

Dannazione, ero così vicino :) Grazie mille! – fgysin

33

$ sbt foo/run arg1 arg2 lavorano anche

+1

Penso che sia più nativo del comando raddoppio nella risposta più votata – Oleg

8

Ha lavorato per me:

$ sbt "run someNumber" 

anche questo può essere di qualche aiuto:

def main(args: Array[String]) { 
    val n = args(0).toInt 
} 
Problemi correlati