2014-11-06 13 views
21

Attualmente sto leggendo il libro Play for Scala: Covers Play 2 di Peter Hilton (editore: Manning) e sto cercando di attenermi alle versioni che hanno delineato nel libro (Riproduci versione 2.1.1) .Sbt 0.12.4+ richiesto per l'importazione del progetto

Ho scaricato la nuova app IntelliJ IDEA 14 CE e l'ho installata. Attualmente sto importando il progetto, e non funziona perché vuole una versione di sbt che sia 0.12.4 o superiore.

Build failing

Questo problema si è verificato nel 13, l'altro giorno, ma non ho avuto il tempo di risolverlo, quindi per favore, non raccomandazioni per tornare al 13 :)

Ecco la carne di il problema: Quando digito sbt --version sulla CLI, stampa sbt launcher version 0.13.6. Ho una versione "maggiore", ma sembra che IDEA non lo riconosca.

Nel tentativo di specificare il mio JAR di avvio SBT, ho puntato il mio programma di avvio personalizzato (nelle impostazioni globali IDEA) a quello in /usr/local/Cellar/sbt/0.13.6/libexec/sbt-launch.jar, ma anche la generazione ha avuto esito negativo con lo stesso errore.

Come avrete intuito a questo punto, ho usato Homebrew per installare e gestire Scala e sbt. Quando ho iniziato a lavorare con Scala a febbraio, ricordo di dover apportare alcune piccole modifiche alle mie impostazioni per ottenere IDEA per trovare Scala, ma la mia versione di IDEA 14 è completamente nuova - non ho importato alcuna impostazione precedente. Ho scaricato i plugin Scala e sbt e sembrano essere correttamente configurati dopo un rapido sguardo e la creazione di un nuovo progetto di test.

Ecco cosa non riesco a capire: Primo, e più ovvio, perché una versione sbt che soddisfa il supposto requisito (0.12.4+) non riesce con la versione 0.13. *?

In secondo luogo, lo SBT in bundle con IDEA è anche maggiore di questa versione? C'è forse un flag sbt da qualche parte nel mio sistema che lo sta puntando a una versione precedente? Una nota a margine, ho alcune versioni di sbt nella mia "Cantina", ma tutte sono maggiori di 0.13.

Mille grazie per il vostro aiuto!

risposta

36

Ho dato un'occhiata agli esempi di codice dal sito Web di Manning e i file project/build.properties per ciascun progetto specificano sbt.version=0.12.2. La mia ipotesi è che il plugin Intellij Scala supporta solo SBT 0.12.4, e non può importare il progetto che è configurato per utilizzare una versione precedente (quindi perché consiglia di "aggiornare la definizione del progetto").

Si dovrebbe provare a utilizzare sbt.version=0.12.4 nel file project/build.properties.

In generale, tenere presente che quando una versione SBT viene specificata in project/build.properties, il programma di avvio SBT scarica la versione specificata e la utilizza per creare il progetto. Nel tuo caso, ciò significa che il launcher SBT 0.13.6 scaricherà SBT 0.12.2 e utilizzerà quella versione per creare il progetto.

+1

Grazie. Questo ha risolto il problema per me e mi ha chiarito molto. Vorrei poter sopravvivere questo più di una sola volta. –

+1

Prego! A proposito, se sei interessato ad avere una migliore comprensione di SBT, posso consigliare il libro "SBT in Action" (attualmente disponibile come anteprima di accesso anticipato da Manning Publishing, non è ancora finito) - ma la documentazione su [il Sito SBT] (http://www.scala-sbt.org/documentation.html) è un buon punto di partenza. –

+0

Grazie, penso che la maggior parte della mia frustrazione con Scala derivi da una mancanza di comprensione di sbt, quindi questo mi renderebbe la vita più facile.Saluti e molte grazie per il tuo aiuto e le tue raccomandazioni! –

Problemi correlati