sbtビルドはscalaで記述でき、それ自体がscalaプロジェクトであるため、scala-ideでscalaプロジェクトとしてインポートしたいと思います。たとえば、次のコードを使用します。
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プロジェクトが正しく設定されていないため、失敗します。
scala-IDEとうまくやり取りできるようにsbtプロジェクトをセットアップする方法はありますか?
回答:
回答№1は1sbteclipseマニュアルから:リンク
sbtビルド定義のEclipseサポートを取得したい場合、例えばBuild.scalaファイルについては、次の手順を実行します。
sbteclipseをグローバルとして使用していない場合推奨される方法ですが、プロジェクトのローカルプラグインとして、最初にsbteclipseをプラグイン(addSbtPlugin(...))としてビルド定義プロジェクト、つまりproject / project / plugins.sbtに追加する必要があります
sbtセッションで、リロードプラグインを実行します
ビルド定義プロジェクトの名前を意味のあるものに設定します。set name:= "sbt-build"
eclipseを実行してから、return return
ビルド定義プロジェクトをEclipseにインポートし、ルートディレクトリをビルドパスに追加します