LiftでMavenを使おうかsbtを使おうか迷っていたのですが、ふとMavenならEclipse上で扱うのも簡単だけどsbtの場合はどうすればいいんだろう?というわけで少し調べてみました。結論としてはSbtEclipsifyというモノを使うといいらしい。
上記のページを見ればやり方はわかると思うけど、いちおう手順をメモしておきます。
まず、project/pluginsというディレクトリを作成し、MySbtProjectPlugins.scalaというファイルを作成します。
import sbt._ class MySbtProjectPlugins(info: ProjectInfo) extends PluginDefinition(info) { lazy val eclipse = "de.element34" % "sbt-eclipsify" % "0.7.0" }
んで、たとえばLiftの場合project/build/LiftProject.scalaというファイルがあるので以下のようにEclipsifyをミックスインします。
import sbt._ import de.element34.sbteclipsify._ // ここを追加 class LiftProject(info: ProjectInfo) extends DefaultWebProject(info) with Eclipsify { // with Eclipsifyを追加 ... }
これでコマンドラインから以下のように実行することでEclipse用の設定ファイル(.projectとか.classpath)が生成されます。
$ sbt reload $ sbt eclipse
ちなみにNetBeansの場合はsbt make-pomでpom.xmlを作成して普通にプロジェクトとして開くのがいいみたい。