sbt: Auswahl der main-Klasse für die Ausführung
Habe ich ~6 wichtige Klassen in meiner Anwendung, die ich in der Regel nur einer von Ihnen, so wollte ich es ausführen, automatisch durch das sbt. sbt macht es möglich, zu definieren, zwei Schlüssel erstellen.sbt:
//Run Key
val selectMainClass = TaskKey[Option[String]]("select-main-class", "Selects the main class to run.")
val mainClass = TaskKey[Option[String]]("main-class", "Defines the main class for packaging or running.")
also habe ich Sie definiert (Beispiel-Projekt, zwei-Klassen - Main1 & Main2 in die Wurzel-source-dir):
mainClass := Some("Main1")
selectMainClass := Some("Main1")
Und "show main-Klasse" von sbt, die prompt auch zu funktionieren scheint:
[info] Some(Main1)
Aber sbt ist run
Aufgabe immer noch aufgefordert, mich für die main-Klasse.
Auch, sbt-revolver funktioniert nicht mit mehreren Klassen, mit Ausnahme java.util.NoSuchElementException: None.get
Verwendung von sbt 0.11.2.
Was mache ich hier falsch?
InformationsquelleAutor Rogach | 2011-12-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie Sie sehen können von der Nutzung untersuchen, mainClass bezieht sich auf verschiedene Konfigurationen und Aufgaben:
Daher müssen Sie, um die ordnungsgemäße Verwendung der Festlegung des lösungsumfangs:
InformationsquelleAutor Heiko Seeberger
Um dies zu verhindern:
hierzu:
run-main
istrunMain
jetzt.Alles was ich wollte, war auf eine Laufzeit von SBT und es schnell gelöst das Problem. Dank
Danke @zeichnen ich es oben aktualisiert
InformationsquelleAutor radke
Wenn Sie angeben möchten, eine main-Klasse für revolver speziell:
mainClass im Revolver.reStart := Paar("einige.Paket.mainClass")
Tatsächlich wechselte ich zu regelmäßigen
~run
läuft meine app innerhalb der gleichen JVM wie die SBT nicht als eine separate... geben diesem einen Versuch.. hoffe revolver ist immer noch die Arbeit mit neuen Scala-VersionenInformationsquelleAutor Matt G
oneline-Konsole:
InformationsquelleAutor Evhz