2
我們使用Scala的,演員2.10.x.內部庫它有它的build.sbtsbt:圖書館應該如何依賴scala-actors?
libraryDependencies <++= scalaVersion(v =>
Seq("org.scala-lang" % "scala-actors" % v)
)
這個庫只編譯2.10.0並推送到我們的內部Maven回購。
我們的一個項目,這取決於庫已更新爲2.10.1。依賴項目有相同的libraryDependencies
所以編譯依賴項目現在警告:
$ sbt
[info] Loading project definition from /tmp/foo/project
[info] Set current project to bar (in build file:/tmp/foo/)
[warn] Potentially incompatible versions of dependencies of {file:/tmp/foo/}bar:
[warn] org.scala-lang: 2.10.1, 2.10.0
使用依賴SBT插件顯示的:
[info] +-com.example:ourlibrary_2.10:1.0.1 [S]
[info] | +-org.scala-lang:scala-actors:2.10.0 (evicted by: 2.10.1)
[info] |
[info] +-org.scala-lang:scala-actors:2.10.1 [S]
應該如何圖書館的libraryDependencies
最好寫?我有以下幾種,但有沒有更清晰的方法?
libraryDependencies <++= scalaVersion(v =>
{
// Use any version of scala-actors for this version of Scala.
val split = v.split('.')
val major = split(0).toInt
val minor = split(1).toInt
val revision = "[%s.%s,%s.%s)".format(major, minor, major, minor+1)
Seq("org.scala-lang" % "scala-actors" % revision)
}
)