2015-07-14 27 views
5

Sto cercando di usare ScalaTest, ma Intellij non può riconoscere:non può risolvere Simbolo "ScalaTest"

import org.scalatest._ 

Ecco il mio file build.sbt, si trova nella stessa directory mio file scalatest.jar.

scalaVersion := "2.11.2" 

libraryDependencies += "org.scalatest" % "scalatest_2.11" % "2.2.4" % "test" 

Grazie

+1

Hai controllato il registro sbt di IntelliJ. Spesso ciò accade quando una dipendenza non viene risolta correttamente (ad es., Versione errata, errata, ecc.). Puoi anche andare alle impostazioni del progetto e guardare nella scheda librerie per vedere se ScalaTest è effettivamente incluso. Non avrai bisogno di un file 'scalatest.jar', l'intero punto sulle dipendenze gestite è che sbt si prende cura di questo. Se non hai selezionato 'auto-import' durante la creazione del progetto, devi anche aggiornare esplicitamente la build sbt se modifichi' build.sbt'. –

+0

Sono entrato nella struttura del mio progetto e l'ho modificato. Anche se sembra essersi risolto in Intellij, la compilation "org.scalatest" non è ancora stata riconosciuta. – nietsnegttiw

+1

Puoi fornire il tuo completo 'build.sbt'? Non è necessario modificare manualmente la struttura del progetto. Lascia che IntelliJ lo faccia per te in base a 'build.sbt' con l'importazione automatica abilitata per il tuo progetto. –

risposta

9

in modo da avere per convenzione di due cartelle di origine:

src/main/scala/... 
src/test/scala/... 

La prima è indicata blu, la seconda verdi in IntelliJ IDEA. Le dipendenze delle librerie a SBT sono associati con uno di questi, così

"org.foo" % "bar_2.11" % "1.2.3" 

è una dipendenza principale, a disposizione di fonti principali (e anche di prova, in quanto test dipende principale). E

"org.foo" % "bar_2.11" % "1.2.3" % "test" 

È una dipendenza di test, disponibile solo per le origini di test. L'idea è che queste sono librerie che non sono richieste per il tuo prodotto, ma solo per eseguire i test unitari.


Nell'esempio, Scala-Test è disponibile solo per testare le origini, quindi non è possibile provare a importarlo dalle origini principali.

+0

In breve, assicurati che il tuo file di test sia in 'src/test/scala', altrimenti l'importazione non funzionerà correttamente. – loxaxs

Problemi correlati