2013-07-02 8 views
7

Ich entwickle eine Scala-Anwendung mit IntelliJ Idea 12, sbt und sbt-idea plugin. Ich habe alle notwendigen Dateien erzeugt, indem ich "gen-idea" gesagt habe und alles gut geht - ich konnte die Quellen in der Befehlszeile sowohl in sbt als auch in IntelliJ Idea 12 mit dem Menü Build-> Make Project kompilieren.Kann eine Scala-Anwendung in IntelliJ + nicht debugsen. Sbt-idea-plugin

Hier ist meine Hauptklasse (Application.scala)

object Application extends App { 
    val a = 12345 
    println("application entry point 1235") 
} 

ich einen Haltepunkt an val a = 12345 haben.

1) Es gab andere Fehler vor, aber jetzt sagt "Module is not specified". Wie löse ich das?

Ich werde Updates veröffentlichen, da es andere Fehler geben würde, wie mein Bauchgefühl mir sagt.

Antwort

16

Um zu debuggen nur um zu starten, müssen Sie eine Laufkonfiguration erstellen (Menü Ausführen -> Konfigurationen bearbeiten). Wenn Sie noch nicht fertig sind, müssen Sie einen Application Eintrag mit der + Schaltfläche hinzufügen.

Nicht nur müssen Sie die Hauptklasse angeben, sondern auch, zu welchem ​​"Modul" diese Klasse gehört. Standardmäßig ist "Klassenpfad des Moduls verwenden" leer. Hier im Popup-Menü müssen Sie das Hauptmodul auswählen (nicht das, das auf "-build" endet). Nachdem Sie das gewählt haben und mit "Ok" schließen, sollte es funktionieren.

enter image description here


Obwohl nicht notwendig, empfehle ich auch sbt für Gebäude anstelle von "Make". In der Konfiguration im "Vor dem Start" Teil, wählen Sie "Make" und klicken Sie auf "-", dann klicken Sie auf "+" und wählen Sie sbt -> test: products.

Bearbeiten: Here is the reference für das SBT-Plugin für IntelliJ.

+0

O mein Gott, ich kann nicht glauben, dass ich es laufen ließ! Es könnte andere Probleme geben, aber für den Moment ist es völlig in Ordnung. –

+0

Ich kann kein Arbeitsblatt ausführen, es sagt 'Compilierung konnte nicht initialisiert werden: Klasse scala.reflect.BeanInfo nicht gefunden. ** Beachten Sie, dass scala ab der Version 2.8 nicht die Verwendung des Java-Klassenpfads voraussetzt. ** Für das alte Verhalten pass -usejavacp zu scala, oder wenn ein Settings ** Objekt programmgesteuert verwenden, settings.usejavacp.value = true.', obwohl ich genau die gleiche Konfiguration wie für Application gemacht. –

+0

Kein Problem hier mit Arbeitsblatt ... Vielleicht eine neue Frage dafür öffnen. Welche Scala-Version verwenden Sie in Ihrem Projekt-2.10? –

Verwandte Themen