Könntet ihr mir bitte erklären, wie man die Hauptklasse im SBT-Projekt einstellt? Ich versuche Version 0.13 zu verwenden.
Meine Verzeichnisstruktur ist sehr einfach (im Gegensatz zur Dokumentation von SBT). Im Stammordner habe ich build.sbt
folgenden Inhalt
name := "sbt_test"
version := "1.0"
scalaVersion := "2.10.1-local"
autoScalaLibrary := false
scalaHome := Some(file("/Program Files (x86)/scala/"))
mainClass := Some("Hi")
libraryDependencies ++= Seq(
"org.scalatest" % "scalatest_2.10" % "2.0.M5b" % "test"
)
EclipseKeys.withSource := true
Und ich habe einen Unterordner project
mit einer einzelnen Datei, Hi.scala
die folgenden Code enthält
object Hi {
def main(args: Array[String]) = println("Hi!")
}
Ich kann es kompilieren, indem ich aufrufe, sbt compile
aber sbt run
zurückkehre
The system cannot find the file C:\work\externals\sbt\bin\sbtconfig.txt.
[info] Loading project definition from C:\work\test_projects\sbt_test\project
[info] Set current project to sbt_test (in build file:/C:/work/test_projects/sbt_test/)
java.lang.RuntimeException: No main class detected.
at scala.sys.package$.error(package.scala:27)
[trace] Stack trace suppressed: run last compile:run for the full output.
[error] (compile:run) No main class detected.
[error] Total time: 0 s, completed Apr 8, 2013 6:14:41 PM