执行任务失败':app:compileDebugKotlin'

我最近更新了我的kotlin和kotlin扩展插件,并在构建时出现以下错误。 我尝试了干净的生成或同步项目与gradle,但没有任何作品

e: Supertypes of the following classes cannot be resolved. Please make sure you have the required dependencies in the classpath: Error:Execution failed for task ':app:compileDebugKotlin'. > Compilation error. See log for more details 

build.gradle如下

 apply plugin: 'com.android.application' apply plugin: 'kotlin-android' buildscript { ext.kotlin_version = '1.0.0-beta-1038' ext.anko_version = '0.7.2' ext.android_support_version = '23.0.1' ext.android_extensions_version = '1.0.0-beta-1038' repositories { jcenter() mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" } } android { compileSdkVersion 23 buildToolsVersion "23.0.1" defaultConfig { applicationId "com.xxxxxxxxxx.app" minSdkVersion 18 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } sourceSets { main.java.srcDirs += 'src/main/kotlin' debug.java.srcDirs += 'build/generated/src/main/debug' release.java.srcDirs += 'build/generated/src/main/release' } dexOptions { preDexLibraries = false javaMaxHeapSize "4g" } packagingOptions { exclude 'META-INF/LICENSE' exclude 'META-INF/NOTICE' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/NOTICE.txt' } } repositories { jcenter() mavenCentral() jcenter { url "https://jitpack.io" } } dependencies { provided fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'io.realm:realm-android:0.83.0' compile 'com.github.PhilJay:MPAndroidChart:v2.1.3' compile 'com.braintreepayments.api:braintree:1.+' compile('com.mikepenz:materialdrawer:4.4.1@aar') { transitive = true } compile 'com.mikepenz:google-material-typeface:1.2.0.1@aar' compile project(':temperature') compile project(':heart') compile project(':lungs') compile "com.android.support:cardview-v7:$android_support_version" compile 'com.github.wendykierp:JTransforms:3.1' compile 'fuel:fuel:0.57' compile "org.jetbrains.anko:anko-sdk15:$anko_version" compile "org.jetbrains.anko:anko-support-v4:$anko_version" compile 'org.apache.directory.studio:org.apache.commons.io:2.4' compile 'com.google.android.gms:play-services:8.1.0' compile "com.android.support:recyclerview-v7:$android_support_version" compile "com.android.support:appcompat-v7:$android_support_version" compile "com.android.support:support-v4:$android_support_version" compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" } 

有人可以指出这是什么问题吗?

谢谢

我通过在终端中构建项目解决了这个问题,然后在intellij(或android studio)中运行应用程序。

gradle clean build – >在ide中运行应用程序

对我来说,解决方案是在Android Studio中打开Gradle控制台窗口,然后使用StackTrace运行构建。

然后,通过阅读,我意识到在Kotlin中做一些事情的新要求我的代码改变,但一个正常的Gradle构建没有捕捉到这些问题。

视图被转换为TextView之类的东西,或者任何可能的情况,这已经不再相关了,必须改成findVieById格式。 例如:

 val textView = snackbarView.findViewById(R.id.snackbar_text) as TextView 

必须改变

 val textView = snackbarView.findViewById<TextView>(R.id.snackbar_text)