由于sbt构建可以用scala编写,并且本身就是一个scala项目,我想将它作为scala项目在scala-ide中导入 . 例如,使用以下代码 .
Build.scala
import sbt._
import Keys._
object TestBuild extends Build {
lazy val root = Project(id = "test",
base = file("."),
settings = Seq(
organization := "com.tomahna",
name := "demo",
scalaVersion := "2.11.8"))
}
plugins.sbt
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "4.0.0")
这个构建适用于sbt,但是Build.scala不是由eclipse编译的,因此我既没有编译错误也没有自动完成 .
我可以将项目文件夹添加到源文件夹,但是 import sbt._
和 import Keys._
将失败,因为未正确设置eclipse项目以提供这些依赖项 .
有没有办法设置sbt项目,以便它与scala-IDE很好地交互?
1 回答
来自sbteclipse手册:link
如果您想获得Eclipse对sbt构建定义的支持,例如对于您的Build.scala文件,请按照下列步骤操作:
如果您不使用sbteclipse作为全局插件,这是推荐的方式,但作为项目的本地插件,您首先必须将sbteclipse作为插件添加(addSbtPlugin(...))到构建定义项目,即to project / project / plugins.sbt
在sbt会话中,执行重载插件
将构建定义项目的名称设置为有意义的名称:set name:=“sbt-build”
执行eclipse然后重新加载返回
将构建定义项目导入Eclipse,并将根目录添加到构建路径