2016-01-02 3 views
8

Ich habe ein Kotlin-Projekt, wo ich möchte Kotlin Warnungen als Fehler behandelt haben. Wie kann ich das machen?Wie kann ich den Kotlin-Compiler Warnungen als Fehler behandeln lassen?

+0

In welchem ​​Build-System oder IDE? Die Antwort könnte anders sein. (Ich habe diese Option nie gesehen, aber um sicher zu sein, in welchem ​​Build-System dies anwendbar wäre) –

+0

Haben Sie die Quelle dieses Projekts auf Github? Verwenden Sie Gradle und Intellij? –

+0

@JaysonMinard es Gradle als Build-System ist mit –

Antwort

5

Seit Kotlin 1.2 wird das Befehlszeilenargument -Werror unterstützt. In Gradle heißt es allWarningsAsErrors:

compileKotlin { 
    kotlinOptions.allWarningsAsErrors = true 
} 
+0

Welcher Block von 'build.gradle' muss dazu hinzugefügt werden? – karl

+1

@ karl Ich denke, das sollte auf der obersten Ebene sein. Bitte beachten Sie die offizielle Dokumentation: https://kotlinlang.org/docs/reference/using-gradle.html#compiler-options –

+0

Danke. Aus der Dokumentation, als Nachschlagewerk: Für einen Android-Projekt enthält der Name der Aufgabe die Build-Variante (dh 'compileDebugKotlin'), aber Sie können es zu allen Aufgaben hinzufügen, indem Sie' tasks.withType (org.jetbrains.kotlin.gradle .tasks.KotlinCompile) .all {kotlinOptions {...}} ' – karl

8

Dies scheint nicht zur Zeit in der Kotlin Befehlszeilenhilfe oder Argumente an die Kotlin Compiler verfügbar verfügbar zu sein:

K2JVMCompilerArguments.java

und

CommonCompilerArguments.java

Aber einige Leute Führen Sie in Gradle die folgenden Schritte aus, um die Protokollierung des Compilers zu überprüfen, um festzustellen, wann eine Warnung generiert wurde. How to fail gradle build on Javadoc warnings

Innerhalb der IDE-Plugins für Kotlin (Intellij IDEA und Eclipse) gibt es keine solche Option.

Sie sollten eine Feature-Anforderung (oder prüfen Sie, ob eine bereits existiert) in YouTrack, die die gesamte Problemverfolgung für das Kotlin-Projekt hat. Und wenn Sie dies tun, bitte posten Sie das Problem hier, damit es verfolgt werden kann.

+4

Feature Anfrage eingereicht unter https://youtrack.jetbrains.com/issue/KT-10563 –

+0

Schreiben Sie etwas in Gradle in der Zwischenzeit ist eine vernünftige Idee. Es ist nicht hoch genug, um die Anstrengungen dafür zu rechtfertigen, aber ich werde es in Zukunft berücksichtigen. –

+0

planen sie diese Verbesserung auf 1,2? Warum gibt es dort keinen VOTE Button? –

Verwandte Themen