2017-11-25 93 views
-1

我不能同步我的項目,因爲這樣的:科特林-的Android空不能轉換到非空型kotlin.String

Caused by: kotlin.TypeCastException: null cannot be cast to non-null type kotlin.String 
    at org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapperKt.loadKotlinVersionFromResource(KotlinPluginWrapper.kt:89) 
    at org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapperKt.access$loadKotlinVersionFromResource(KotlinPluginWrapper.kt:1) 
    at org.jetbrains.kotlin.gradle.plugin.KotlinBasePluginWrapper.<init>(KotlinPluginWrapper.kt:39) 
    at org.jetbrains.kotlin.gradle.plugin.KotlinAndroidPluginWrapper.<init>(KotlinPluginWrapper.kt:70) 
    at org.gradle.api.internal.DependencyInjectingInstantiator.newInstance(DependencyInjectingInstantiator.java:81) 
    at org.gradle.api.internal.plugins.DefaultPluginManager.instantiatePlugin(DefaultPluginManager.java:72) 
    ... 126 more 

這事我更新了科特林插件1.1.61

回答

-2

這個問題可能出自一些java代碼,它被錯誤地移植到kotlin:由於javas對象默認是可空的,所以你必須在kotlin中將它們視爲可空對象:如果你希望你的代碼行爲與java代碼,只需在每個變量後添加雙重感嘆號(「!!」)即可。如果變量爲null,則會產生空指針異常。 例如不是

view = findViewById(R.id.id) 
view.setOnClickListener(...) 

因此

view = findViewById(R.id.id) 
view!!.setOnClickListener(...) 
+0

你看了日誌? –