Große Kompilierungszeit für den Kotlin Code in IntelliJ

8

Ich habe Kotlin mit der neuesten Version von Eclipse 2 Monate lang ohne Leistungsprobleme auf meinem Windows 10 Computer verwendet. Jetzt möchte ich eine Live-Coding-Sitzung über Kotlin mit intelliJ (da es die JetBrains-Sprache ist ...) Ultimate Edition, die ich gerade installiert und noch nie benutzt habe, auf einem kürzlich OSX Computer. Die beiden Computer haben eine gute Hardware und begrenzen meine Tests nicht.

Mein Problem ist, dass bei jeder Änderung in meinem Kotlin-Code die Kompilierungszeit zwischen 8 Sekunden und 35 Sekunden liegt. Ich habe meine Tests auf minimalistischen Code gemacht:

%Vor%

Wenn ich die Variable "a" ändere und so neu aufbauen muss, benötigt es im besten Fall immer 8 Sekunden, um die Kompilierung abzuschließen.

Da ich eine Live-Coding-Session mit vielen kleinen Funktionen und Compilations machen möchte, ist diese Art der Verzögerung viel zu bedeutungsvoll. Die Zuschauer müssen lange warten, bevor sie die Ergebnisse bei jeder Kompilierung sehen können. Sie erwarten logischerweise eine gute Leistung von IntelliJ tool.

Im selben Projekt habe ich versucht, dieselbe Java-Klasse (mit einem einzigen Attribut) zu erstellen und sein Attribut zu ändern, um die Kompilierung auszulösen, und es dauert weniger als 1 Sekunde zum Kompilieren.

Ich habe versucht, manuell den Code in der Befehlszeile damit zu kompilieren:

%Vor%

Ich hatte einige anständige Kompilierungszeiten, selbst wenn es in der Nähe von 3 Sekunden war.

Wenn ich den Bildschirm "Nachrichten" in IntelliJ betrachte, während der Kotlin-Code kompiliert wird, kann ich Folgendes sehen:

%Vor%

Es stoppt hier für die ganze Kompilierungszeit und macht dann fast sofort die nächsten Schritte:

%Vor%

Vielleicht gibt es ein Problem bei der Konfiguration von IntelliJ oder so ähnlich. Es fiel mir schwer, nach etwas zu suchen, das die Aufführung verbessern könnte, aber nichts half mir ...

Ich wäre sehr dankbar, wenn mir jemand bei Intellij wie in Eclipse eine realistische Kompilationszeit mit Kotlin geben könnte!

    
Bastien7 17.01.2017, 12:09
quelle

2 Antworten

1

Dies ähnelt dem Problem KT-15491 .

Um sicherzustellen, dass es auch bei Ihnen der Fall ist, versuchen Sie, das folgende einfache Kotlin-Programm auszuführen:

%Vor%

Wenn die gedruckte verstrichene Zeit signifikant größer als ein Bruchteil einer Sekunde ist, dann ist das der Grund.

Dieses Problem betrifft nicht nur den Kotlin-Compiler, sondern auch jedes JVM-Programm, das versucht, eine temporäre Datei zu erstellen oder eine andere Aktion mit SecureRandom class durchzuführen.

Ich habe die gleiche Verlangsamung bei jedem JPS-Build auf meinem Windows 7-Notebook erlebt. Ich habe die Problemumgehung mit der Reihenfolge der Sicherheitsanbieter ausprobiert, die in diesem Frage und es hat geholfen.

    
Ilya 17.01.2017 17:21
quelle
0

Stellen Sie sicher, dass Sie diese Kontrollkästchen in den Einstellungen aktiviert haben:

  • Inkrementelle Kotlin-Zusammenstellung
  • Kotlin-Compiler-Daemon (hält den Kotlinc-Prozess am Leben)
voddan 17.01.2017 12:16
quelle