:インコヒーレントScalaは私が実行エラーにつながる警告持っているライブラリのバージョン
[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
これは奇妙ですが、私のScalaのバージョン>は2.11であるので:
$ scala -version
Scala code runner version 2.11.8 -- Copyright 2002-2016, LAMP/EPFL
$sbt sbtVesion
[info] 0.13.9
マイ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"
)
私のスカラーライブラリが古くなっている理由は分かりません。
「scalaVersion」を追加して、私の問題を解決しました。しかし、 '%%'を私の 'libraryDependencies'に追加すると' Jline#jline_2.11; 2.12:not found 'と' com.typesafe.akka#akka-actor_2.11_2.11;という警告が追加されます。見つけた。しかし '%% 'がなければ、プログラムは完璧に動作します! – Moebius
2つの問題があります:JLineはScalaライブラリではないので、元のバージョンが正しい2つの '%%'または '_2.11'のどちらも必要ありません。 Akkaの場合、同じことを表現するので、2つのうちの1つだけ必要です。 '%%'バージョンをお勧めします。 –
そして、 'corss CrossVersion.full'は、' ammonite-repl'のようなフルバージョンを必要とする依存関係に対して非常に便利です。 –