Come sopprimere informazioni e messaggi di successo in sbt?

Quando sbt run vedo alcune informazioni di intestazione e piè di pagina che vorrei eliminare:

 $ sbt run [info] Set current project to XXX (in build file:/path/to/dir/)  [success] Total time: 68 s, completed Apr 1, 2012 7:30:45 PM $ 

Come posso sbarazzarmi di queste 2 linee aggiuntive (cioè le linee [info] e [success] )? Ci sono alcune impostazioni di configurazione build.sbt disponibili per farlo? Idealmente non voglio avere un altro strumento / dipendenza solo per sbarazzarmi di quelle 2 linee.

Di seguito è riportato un elenco di cose che ho provato:

  • Impostare run logLevel su Warn
  • Impostare Global logLevel su Avvisa
  • Set -Dsbt.log.noformat=true

Soluzione temporanea attualmente in uso: copia l’invocazione java che sbt genera (eseguendo ps o top ) come risultato di fork in run := true e esegue manualmente il comando java direttamente sulla riga di comando.

Sarebbe meglio e molto più pulito se si potesse dire a sbt non stampare quelle righe.

  • Versione Scala: 2.9.1
  • Versione SBT: 0.11.1

sbt 0.13.13

Usa -warn o -error . Vedi le correzioni con implicazioni di compatibilità per la versione 0.13.13 di sbt :

è fortemente incoraggiato a migrare alle opzioni di trattino singolo: -error , -warn , -info e -debug

sbt 0.13.1

Per disabilitare i messaggi info eseguire SBT con --error o --error opzioni della riga di comando.

Per disabilitare i messaggi [success] imposta showSuccess su false .

Portando tutto insieme, ti offre le seguenti opzioni:

  • Sulla riga di comando utilizzare quanto segue:

     $ sbt --error 'set showSuccess := false' run 
  • In build.sbt aggiungi build.sbt showSuccess := false

     $ cat build.sbt showSuccess := false 

    ed esegui sbt --error run .

Come ha detto Jacek nella sua risposta, in build.sbt è ansible aggiungere showSuccess := false per sopprimere il messaggio [success] . Per sopprimere il messaggio [info] , avrei impostato logLevel su Level.Warn per la configurazione di run . Mettendolo insieme, si desidera aggiungere queste linee a build.sbt :

 showSuccess := false logLevel in run := Level.Warn 

Dovresti essere in grado di sbarazzarti della riga “Imposta progetto corrente” aggiungendo questo al tuo file build.sbt :

 onLoadMessage := ""