2016-01-02 41 views
8

我有一個Kotlin項目,我想將Kotlin警告視爲錯誤。我怎樣才能做到這一點?如何讓Kotlin編譯器將警告視爲錯誤?

+0

在什麼構建系統或IDE?答案可能會有所不同。 (我從來沒有見過這個選項可用,但是一定要清楚在什麼構建系統中這是適用的) –

+0

你在Github上有這個項目的源代碼嗎?你在使用Gradle和Intellij嗎? –

+0

@JaysonMinard它使用Gradle作爲構建系統 –

回答

5

由於Kotlin 1.2支持命令行參數-Werror。在Gradle中,它的名字是allWarningsAsErrors

compileKotlin { 
    kotlinOptions.allWarningsAsErrors = true 
} 
+0

哪一塊'build.gradle'需要添加到? – karl

+1

@karl我認爲這應該是在頂層。請參閱官方文檔:https://kotlinlang.org/docs/reference/using-gradle.html#compiler-options –

+0

謝謝。從文檔中,供將來參考:對於Android項目,任務名稱將包含構建變體(即'compileDebugKotlin'),但您可以使用'tasks.withType(org.jetbrains.kotlin.gradle)將其添加到所有任務.tasks.KotlinCompile).all {kotlinOptions {...}}' – karl

8

這似乎並非是目前在科特林命令行幫助可用,或參數提供給科特林編譯:

K2JVMCompilerArguments.java

CommonCompilerArguments.java

但有些人在Gradle中做類似這樣的事情來掃描編譯器的日誌記錄以瞭解何時生成警告。 How to fail gradle build on Javadoc warnings

在可用於Kotlin(Intellij IDEA和Eclipse)的IDE插件中沒有這種選項。

您應該在YouTrack中提交功能請求(或檢查是否存在功能請求),該功能請求包含Kotlin項目的所有問題跟蹤。如果你這樣做,請在這裏發佈問題,以便跟蹤。

+4

在https://youtrack.jetbrains.com/issue/KT-10563提交的功能請求 –

+0

同時在Gradle中寫入內容是一個合理的想法。對於我來說,目前我沒有足夠的優先權來證明這一點,但我會在將來考慮它。 –

+0

他們將這種改進安排到1.2?爲什麼沒有任何投票按鈕 –