Попробуйте мой sbt плагин от github.Пока что это очень скромно, но он должен скачать jruby jar и позволить вам вызывать файл .rb перед компиляцией.
Суть этого плагина очень проста:
import sbt._
object SbtJRuby extends Plugin {
object SbtJRubySettings {
lazy val settings = Seq(Keys.commands += jirb, tx, jrubyFile := file("fnord.rb"))
}
def jirb = Command.args("jirb", "<launch jirb>") { (state, args) =>
org.jruby.Main.main(List("-S", "jirb").toArray[String])
state
}
val jruby = TaskKey[Unit]("jruby", "run a jruby file")
val jrubyFile = SettingKey[File]("jruby-file", "path to file to run with JRuby")
val tx = jruby <<= (jrubyFile, Keys.baseDirectory) map { (f: File, b: File) =>
val rb = (b / f.toString).toString
// println("jruby with " + rb)
org.jruby.Main.main(List(rb).toArray[String])
}
}
На самом деле все, что он делает, - это вызывает jar-файл jruby с именем переданного вами файла rb. И, конечно, добавляет сам jruby в качестве управляемой зависимости:
libraryDependencies ++= Seq(
"org.jruby" % "jruby-complete" % "1.6.5"
)
Также добавляется «jirb»"команда для консоли Scala, которая переводит вас в сеанс jirb.