sbt使用了错误的scala版本,而不是使用build.sbt中的配置
我已经将它们放在当前项目根目录下的build.sbt文件中sbt使用了错误的scala版本,而不是使用build.sbt中的配置,scala,sbt,Scala,Sbt,我已经将它们放在当前项目根目录下的build.sbt文件中 scalaHome := Some(file("/Users/ddam/scala-2.10.2")) scalaVersion := "2.10.2" 我使用了sbt $ sbt --version sbt launcher version 0.12.4 但是,当一个特定的依赖关系无法解决时,我仍然看到sbt和scala的版本都是错误的 [warn] Note: Some unresolved dependencies hav
scalaHome := Some(file("/Users/ddam/scala-2.10.2"))
scalaVersion := "2.10.2"
我使用了sbt
$ sbt --version
sbt launcher version 0.12.4
但是,当一个特定的依赖关系无法解决时,我仍然看到sbt和scala的版本都是错误的
[warn] Note: Some unresolved dependencies have extra attributes. Check that these dependencies exist with the requested attributes.
[warn] com.typesafe.sbteclipse:sbteclipse-plugin:2.4.0 (sbtVersion=0.12, scalaVersion=2.9.2)
请帮帮我。看起来像是,您使用的是0.12.4版。
您可以按照上的说明指定SBT版本
其他一些注意事项:您可能希望使用Scala 2.10.3,而不是2.10.2
另外,指定scalaHome
也很奇怪;通常SBT会自动为您获取所需的Scala罐。
因此,要引导Scala环境,只需安装SBT和JDK即可
编辑:(在下面发表评论):
使用SBT构建代码时,实际上可能会使用两个不同版本的Scala。
有SBT版本(构建系统运行的Scala版本)和项目中代码的版本(代码将运行的Scala版本)
SBT的Scala版本由您使用的SBT版本决定。
如果使用0.12.4,SBT将在Scala 2.9.3上运行。
如果使用0.13.0,SBT将在Scala 2.10.3上运行。
您可以通过以下方式控制SBT版本
要控制项目将运行的Scala版本,可以在/build.sbt
中设置scalaVersion
所以,您得到这个错误是因为您使用的是SBT 0.12.4,它使用的是Scala 2.9.3。
SBT试图找到2.9.3的sbteclipse插件,但它不存在,因为它需要SBT 0.13.0(=>Scala 2.10.3)。您似乎正确指定了使用Scala 2.10.2编译项目
sbt 0.12.4始终使用Scala 2.9.x编译构建文件(即
build.sbt
和project/
下的内容)。这意味着sbt 0.12.x的插件也必须针对2.9.x进行编译,这解释了您看到的情况
sbteclipse 2.4.0需要sbt 0.13。如果您想继续使用sbt 0.12.4,请尝试sbteclipse 2.2.0
埃姆克里斯蒂安森的回答还有很多其他要点。请理解我的问题。:)更清楚地说,我想问的是如何为sbt指定一个特定的scala版本。@Dick,上面的内容有用吗?“sbt 0.12.4总是使用scala 2.9.x来编译构建文件。”真的吗?官方的说法是什么?即使在我下载了sbc 0.13.0并重试之后,它仍然给出了相同的错误。更改后您是否运行了
sbt clean
?您是否在build.properties
中指定了SBT版本?