Ho un avvertimento che conducono a errore di esecuzione:scala Incoerente biblioteca versione
[info] Set current project to calculator (in build file:/home/guillaume/projects/scala/2/)
[info] Updating {file:/home/guillaume/projects/scala/2/}root...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[warn] Scala version was updated by one of library dependencies:
[warn] * org.scala-lang:scala-library:2.10.5 -> 2.11.1
[warn] To force scalaVersion, add the following:
[warn] ivyScala := ivyScala.value map { _.copy(overrideScalaVersion = true) }
[warn] Run 'evicted' to see detailed eviction warnings
[info] Compiling 3 Scala sources to /home/guillaume/projects/scala/2/target/scala-2.10/classes...
[success] Total time: 9 s, completed Apr 5, 2016 12:16:04 AM
Questo è strano perché la mia versione Scala è> 2.11:
$ scala -version
Scala code runner version 2.11.8 -- Copyright 2002-2016, LAMP/EPFL
$sbt sbtVesion
[info] 0.13.9
mio build.sbt:
lazy val root = (project in file(".")).
settings(
name := "calculator",
libraryDependencies += "jline" % "jline" % "2.12",
libraryDependencies += "com.typesafe.akka" % "akka-actor_2.11" % "2.3.4"
)
Semplicemente non capisco perché la mia libreria di scala sia obsoleta.
Grazie, l'aggiunta di 'scalaVersion' ha risolto il mio problema. Ma aggiungendo il '%%' al mio 'libraryDependencies 'aggiungi un altro avviso:' jline # jline_2.11; 2.12: non trovato 'e' com.typesafe.akka # akka-actor_2.11_2.11; 2.3.4: non found'. Ma senza '%%' il programma funziona perfettamente! – Moebius
Ci sono due problemi: JLine non è una libreria Scala, quindi non è necessario il doppio '%%' o '_2.11'-la versione originale è corretta. Per Akka, hai bisogno solo di uno dei due, dal momento che esprimono la stessa cosa. Suggerirei la versione '%%'. –
E 'corss CrossVersion.full' è molto utile per le dipendenze che richiedono la versione completa come' ammonite-repl'. –