2015-06-13 7 views
5

Ich möchte ein neues Projekt mit Kotlin für die JVM mit der IntelliJ IDE starten, aber ich kann keine Konfiguration dafür bekommen, dass es funktioniert. Ich habe versucht, this tutorial zu folgen, und nachdem das nicht funktioniert hat (die "Run '_DefaultPackage" -Option erschien nie sogar), fing ich an zu versuchen, zu begreifen, was getan werden sollte, ohne Erfolg. Was passiert ist bisher (mehrfach):Kotlin - IntelliJ Projekteinstellungen

  • Ich habe ein neues Projekt, ausgewählt „Kotlin - JVM“ als Projekttyp.
  • Ich klickte auf der zweiten Seite auf die Schaltfläche "Create ..." für die Kotlin Runtime und wählte "Copy to: lib".
  • Ich klicke auf "Fertig stellen" und das erstellte Projekt hat ein Modul mit dem gleichen Namen wie mein Projekt. Es gibt keine Standardquelldatei oder eine Konfiguration.
  • ich eine Kotlin Datei mit dem Namen "app.kt" (ich auch andere Namen versucht haben, wie "Main.kt"), und setzen Sie den folgenden Quellcode in:
fun main(args: Array<String>){ 
    println("Hello world!") 
} 
  • Ich habe rechts auf den Code-Editor UND die Datei im linken Bereich geklickt, um die Option "Run '_DefaultPackage" zu finden, die im Tutorial erwähnt wurde, aber in beiden nicht gefunden wurde.
  • Ich erstelle eine neue Kotlin-Konfiguration, die fragt, dass ich eine "Hauptklasse" einstelle. Bei diesem Anblick, ändere ich den Code:
public class Main { 
    fun main(args: Array<String>) { 
     println("Hello world!") 
    } 
} 
  • ich meine Konfiguration bearbeiten und die Hauptklasse auf „Main“ und dann die Konfiguration auszuführen. Es schlägt fehl, mit diesem Fehler: „Fehler Lauf. Funktion‚main‘nicht in der Klasse‚Main‘gefunden

Was bin ich

+0

Welche Version von IntelliJ IDEA verwenden Sie? Haben Sie einen Src-Ordner? Hast du dort die Kotlin-Datei erstellt? –

+0

IntelliJ Version 14.1.3. Ich habe einen Quellordner namens "src", der standardmäßig erstellt wird und eine Kotlin-Klassendatei namens "Main" enthält. –

+0

Können Sie einen Screenshot Ihres Projektlayouts zeigen oder besser noch, schicken Sie mir das Beispiel? Ich bin neugierig, warum das passiert. –

Antwort

1

Ihre Datei öffnen, die Ihre Hauptfunktion enthält und gehen auf Menü-? > "Konfigurationen bearbeiten", dann "+" im Dialog, "Anwendung" als Typ wählen, den Namen auf den gewünschten Wert setzen und die Hauptklasse durch Klicken auf die Schaltfläche neben dem obersten Eingabefeld (mit der Bezeichnung "Hauptklasse") festlegen ").

Wählen Sie" Klassenpfad des Moduls verwenden "und wählen Sie Ihr Modul aus der Dropdown-Box. Klicken Sie auf" Anwenden "und schließen Sie den Dialog. Jetzt sollten Sie mit Shift + F10, debuggen mit Shift ausführen können + F9 und bearbeiten Führen Sie Konfigurationen mit Shift + Alt + F10 aus. Sie können auch über die zwei Schaltflächen in der oberen rechten Ecke Ihres Hauptbildschirms ausführen oder debuggen.

+0

Der dreifache Punkt-Knopf zum Auswählen der Klasse hat nicht funktioniert (Doppelklick auf die Klasse hat nichts getan), aber ich konnte den Namen meiner Klasse dort eingeben. Jetzt gibt es mir einen Fehler "Hauptmethode sollte statisch sein", was für Kotlin keinen Sinn macht, weil es so etwas nicht gibt. Ich habe versucht, es aus der Klasse zu nehmen, aber das hat nicht funktioniert. –

0

Ich musste mein Kotlin-Plugin (das vor kurzem herauskam) aktualisieren und dann die Rechtsklick-Optionen für die Ausführung gestartet. Ich konnte das Problem nicht auf etwas anderes zurückverfolgen, also denke ich, dass es das ist.

Wenn Sie dieses Problem haben, klicken Sie mit der rechten Maustaste auf die Quellcodedatei, in der sich Ihre Hauptfunktion befindet, und klicken Sie auf Ausführen, Erstellen oder Debuggen.

Beachten Sie, dass die Hauptfunktion den Namen "Haupt" (keine Großbuchstaben) und ein "Array" -Argument haben muss. Das hat mich ein paar Mal erwischt, als ich neue Projekte machte, um es zum Laufen zu bringen.

6

Eine vollständige Antwort, wie Sie die runnable Klasse für eine Top-Level-main() Funktion zu identifizieren, oder eine main() Methode innerhalb einer Klasse zu verwenden, ist in dieser anderen Antwort Stack-Überlaufes dokumentiert beides: How to run Kotlin classes

auf diese Kategorie gehört Laufen Befehlszeile, innerhalb von Intellij (wie Ihre Frage fragt), Gradle und mehr.

1

zog ich meine main.kt-Datei im Ordner src des Projekts und Problem gelöst heißt IntelliJ MainKt Klasse

8

finden konnten, können Sie das Projekt verursachen Hauptverfahren nicht montieren nicht statisch ist. Sie sollten es also in einem Begleitobjekt definieren.

class HelloKotlin { 

     companion object { 
      @JvmStatic fun main(args: Array<String>) { 
       println("Kotlin main is running here!") 
      } 
     } 
    } 
+2

Diese Antwort sollte akzeptiert werden –

Verwandte Themen