2013-10-26 14 views
5

Diciamo che ho un scala codice, apertura nel intellij idea:IntelliJ Idea compilazione con SBT di default

object Test extends App { 
          // <- I click here 
    def init[T](xs: List[T]) : List[T] = xs match { 
    case List() => throw new Error("empty list") 
    case List(x) => List() // empty list 
    case head :: tail => head :: init(tail) 
    } 

    val list = List(1,2,4) 

    println (init(list)) 

} 

Poi, quello che faccio quando voglio lanciare questo codice, clicco tra le linee dove object e def è definito per consentire a IDE di sapere cosa voglio avviare (in questo caso l'intero oggetto, perché non seleziono alcun metodo). Fare clic su CTRL + MAIUSC + F10 - per eseguire.

Si inizia .. vedo "Test" nella mia configurazione combo-box ... Ma in quel momento esatto mi fermo processo di compilazione .. e andare a quella configurazione per cambiare la configurazione ..

Quello che ho modifica: è sezione "Prima del lancio" per eseguirlo con "sbt: compile". Lo faccio perché voglio fare affidamento su SBT ma non su IDE.

La domanda è: C'è un modo per avviare/compilare in SBT di default in Intelly IDEA?

+1

Ho provato Quick Start -> Configura -> Impostazioni predefinite progetto -> Esegui configurazioni -> Valori predefiniti -> Applicazione e cambia qui in 'sbt', 'test: compile'. Tuttavia, questo non sembra avere alcun effetto, se creo un nuovo progetto, le impostazioni predefinite ritornano a "make" di IDEA ... –

+0

Ok, allora considererò questo un errore: http://youtrack.jetbrains.com/ problema/IDEA-115473 vedrà. – ses

risposta

3

Sì, lo si può fare, ma è necessario assicurarsi che questo sia un progetto SBT valido. Per verificare, assicurati di poter compilare ed eseguire da SBT sulla riga di comando.

  1. Installare il plugin SBT per IntelliJ IDEA
  2. Aprire la configurazione di esecuzione per questo test in Esegui -> Modifica configurazioni ...
  3. Nella "prima del lancio" sezione rimuovere Marca e aggiungere l'azione SBT " Esegui azione SBT 'compile' "

Ora modifica il codice di prova ed esegui nuovamente. Nella barra di stato vedrai che la compilazione di SBT viene eseguita prima dell'esecuzione del codice di test.

Aggiornato Per rendere questo comportamento di default per tutte le configurazioni run future, fanno di questo cambiamento delle impostazioni predefinite -> elemento Applicazione nel Modifica configurazioni ... finestra.

+2

La mia comprensione della domanda è stata se è possibile fare in modo che IDEA scelga quell'azione _di default_. –

+0

Esattamente, altrimenti ho bisogno di fare/riconfigurarlo tutto il tempo in cui decido di lanciare non tutto il progetto/set di test, ma una funzione o test particolare. – ses

Problemi correlati