我按照these的步骤为IntelliJ idea配置一个项目。
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.2.0")我使用用于SBT0.12版本的sbt-idea,其中固定了Idea的bug。
当我在项目目录中输入sbt时,我注意到它使用的是scala 2.9.2。但我的项目将使用scala 2.10.1。
问题:
对于插件(S) (~/.sbt/plugins)-compilation,使用哪个scala版本有意义吗?或者我应该使用一个/相同的scala版本来处理所有事情吗?我可以更改插件的scala版本吗?
因此,我创建了包含上述内容的~/.sbt/plugin/build.sbt文件。
发布于 2013-04-02 06:59:04
实际上我知道了。
build.sbt (使用2.10.1 scala)文件的项目-只要您键入sbt..所有依赖项都将被下载到scala文件夹--甚至scala编译器也会被下载到那里(~/.sbt/boot)。它甚至可以是scala的几个版本:例如2.10.1和2.9.2。~/sbt/plugins。它可以是任何scala版本-取决于它的build.sbt文件,例如在我的例子中:解析器在"http://oss.sonatype.org/content/repositories/snapshots/“处解析+= "Sonatype snapshots”
快照(“com.github.mpeltonen”% "sbt-idea“%”1.2.0-addSbtPlugin“)
我应该注意如果尝试不同的版本..就像1.1.0-M2-TYPESAFE一样,它不会工作..(至少在我的例子中)- gen-idea命令是不可用的。我不知道为什么。我想应该是这样。
此外,如果您不指向resolvers += -它将不会工作。但它不会告诉你这件事..
这个插件使用的是scala 2.9.2 -我们在这里看不到它,但我们可以从它在安装/下载时产生的输出中看到它。这就是为什么我们有~/.sbt/boot/scala-2.9.2/的原因。
在任何情况下我们都不应该关心它。由sbt处理。
当您通过在sbt console中键入gen-idea将sbt项目转换为intellij-idea项目时,结果是您的集成开发环境项目将引用~/.sbt/scala,而不是引用某个地方安装的scala。所以甚至不需要指出scala的位置- sbt-idea sbt的插件就可以完成所有的工作。这很好!
这就是我想得到的答案。人们通过尝试来获得/理解它。
发布于 2013-04-05 00:13:48
这个版本已经过时了,它依赖于sbt-idea 1.2.0-SNAPSHOT。在撰写本文时,最新版本是1.3.0
有关使用最新版本的scala、scalatest和SBT to skeleton项目插件的实现,请参阅my project IDE。
https://stackoverflow.com/questions/15750287
复制相似问题