由于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很好地交互?
答案 0 :(得分:1)
来自sbteclipse手册:link
如果您想获得Eclipse对sbt构建定义的支持,例如对于Build.scala文件,请按照下列步骤操作:
如果您不使用sbteclipse作为全局插件,这是推荐的方式,但作为项目的本地插件,首先必须将sbteclipse作为插件添加(addSbtPlugin(...))到构建定义项目,即项目/项目/ plugins.sbt
在sbt会话中,执行reload plugins
将构建定义项目的名称设置为有意义的名称:set name:=" sbt-build"
执行eclipse,然后重新加载return
将构建定义项目导入Eclipse并将根目录添加到构建路径