Kotlin未解决参考

时间:2018-04-17 20:32:32

标签: android kotlin build-error

起初 - 我一直在谷歌搜索并使用所有,我找到的。

我的项目级build.gradle包含此

在文件根目录

buildscript {
    ext.kotlin_version = "1.2.31"
    repositories {
        google()
        jcenter()
    }
    dependencies {
        .....
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        .....
    }
}

我的模块级build.gradle包含此

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'

apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion 27

    buildToolsVersion "27.0.3"
    defaultConfig {
        applicationId "iam.thevoid.sudoku"
        minSdkVersion 16
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        externalNativeBuild {
            cmake {
                cppFlags ""
            }
        }
        vectorDrawables.useSupportLibrary = true
    }

    externalNativeBuild {
        cmake {
            path "CMakeLists.txt"
        }
    }

    dataBinding {
        enabled = true
    }
}


dependencies {
    ..........
    // kotlin
    implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
    .........
}

但我仍然在构建期间继续收到错误

e: \pages\BaseActivity.kt: (16, 9): Unresolved reference: window
e: \pages\GameActivity.kt: (37, 21): Unresolved reference: startActivity
e: \pages\MenuActivity.kt: (30, 21): Unresolved reference: startActivity
e: \util\FileUtil.kt: (19, 31): Unresolved reference: assets
e: \util\FileUtil.kt: (21, 51): Unresolved reference: it
e: \viewmodel\MenuViewModel.kt: (42, 70): Unresolved reference: finish

正如您所看到的 - 有一些简单的引用,如'startActivity'或'finish'。为什么kotlin无法解决它?

当我更新了一些我不记得的东西时,我开始得到这些错误。也许它是一个kotlin插件版本,可能有一个gradle或gradle插件,但我尝试降级这个插件而不是返回工作版本中的项目。

你能帮忙吗?

1 个答案:

答案 0 :(得分:1)

我发现了问题! 有依赖,这打破了构建。在我的情况下,它是

implementation group: 'com.h2database', name: 'h2', version: '1.3.148'

我已经为测试Exposed添加了这个,但是在我更新build.gradle文件的同时我也这样做了。

如果您有相同的错误,您还可以检查您的依赖项。可能其中一个打破了构建。