起初 - 我一直在谷歌搜索并使用所有,我找到的。
我的项目级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插件,但我尝试降级这个插件而不是返回工作版本中的项目。
你能帮忙吗?
答案 0 :(得分:1)
我发现了问题! 有依赖,这打破了构建。在我的情况下,它是
implementation group: 'com.h2database', name: 'h2', version: '1.3.148'
我已经为测试Exposed添加了这个,但是在我更新build.gradle文件的同时我也这样做了。
如果您有相同的错误,您还可以检查您的依赖项。可能其中一个打破了构建。