2013-08-21 21 views
0

爲什麼SBT版本扮演完全合格依賴的角色?爲什麼SBT版本扮演完全合格依賴的角色?

我認爲這隻取決於Scala的版本。

這裏是一個例子。

  • build.sbtscalaVersion設置爲2.10.2
  • build.propertiessbt.version設置爲0.12.1
  • plugins.sbt有插件依賴性"com.github.siasia" %% "xsbt-web-plugin" % "0.12.0-0.2.11.1"

如果我建造它,我看到下面的日誌中:

[info] Resolving com.github.siasia#xsbt-web-plugin_2.9.2;0.12.0-0.2.11.1 ... 

但如果我改變sbt.version設置爲0.13.0-RC5 SBT沒有找到這個插件,並在日誌中說

[info] Resolving com.github.siasia#xsbt-web-plugin_2.10;0.12.0-0.2.11.1 ... 

爲什麼它改變階版本,如果它留在我的配置2.10.2?如何解決它?

回答

4

SBT項目是遞歸的,所以每一層都有自己的設置(包括斯卡拉版本和CLASSPATH)(見http://www.scala-sbt.org/0.13.0/docs/Getting-Started/Full-Def.html

SBT插件是依賴於SBT只是普通的圖書館,因此插件必須交跨SBT版本構建(及每個SBT版本可能需要不同的斯卡拉版)

addSbtPlugin功能需要的是照顧和解決了一個適當的神器當前SBT和Scala

siasia#xsbt - 網頁插件是不是真的保持而且它沒有sbt 0.13的版本,使用https://github.com/JamesEarlDouglas/xsbt-web-plugin作爲替代品

相關問題