Java &引用;附加到此项目的某些Kotlin库的格式不受支持。请更新库或插件";

Java &引用;附加到此项目的某些Kotlin库的格式不受支持。请更新库或插件";,java,android-studio,kotlin,Java,Android Studio,Kotlin,我已经在我的android studio项目中安装了kotlin插件。代码符合我的要求,但有一个问题。当我从java类调用它时,它也会执行。这是给我的警告“一些Kotlin库附加到这个项目有不受支持的格式。请更新库或插件”。在IDE中也无法识别println()函数 test.kt fun foo(){ println("ad") } public class iTar{ public fun printAll( vararg a: String ){ for

我已经在我的android studio项目中安装了kotlin插件。代码符合我的要求,但有一个问题。当我从java类调用它时,它也会执行。这是给我的警告“一些Kotlin库附加到这个项目有不受支持的格式。请更新库或插件”。在IDE中也无法识别println()函数

test.kt

fun foo(){
    println("ad")
}



public class iTar{
   public fun printAll( vararg a: String ){
        for(item in a)println(item)
    }
}
建造,格雷德尔

buildscript 
{
    ext.kotlin_version = '0.8.679'
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }


}

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"
    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }

    packagingOptions {
        exclude 'META-INF/LGPL2.1'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/NOTICE'
    }

    defaultConfig {
        applicationId "xxxxx"
        minSdkVersion 14
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }


}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'org.codehaus.jackson:jackson-mapper-lgpl:1.9.13'
    compile 'com.j256.ormlite:ormlite-android:4.48'
    compile 'org.mapsforge:svg-android:0.4.3'
    compile 'com.android.support:support-v4:20.+'
    compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}

repositories {
    mavenCentral()
}

您的问题来自于在Gradle构建中使用Kotlin 0.8.679,这对于您在IDE中使用的Kotlin插件来说太新了。两种可能的解决办法:

  • 将插件更新为更新的夜间版本,或
  • 在渐变构建中使用0.8.11

您的Android Studio Kotlin插件版本是什么(设置/首选项->插件->Kotlin)?Android Studio 0.8.6的0.8.11版本。Kotlin 1.0及更高版本将不再是问题。类文件中的ABI版本将是相同的。这在Beta中基本上是正确的,但是在1.0的候选版本中很快会有一次强制重新编译。@user881269它也为我解决了这个问题(将Kotlin版本0.8.679替换为0.8.11)在Android 0.8.9上,你应该接受Andrey的回答。你如何知道对于你在IDE中使用的Kotlin插件来说,哪一个版本太新了。?作为一项规则,你不应该使用高于Kotlin 1.0插件版本的编译器版本,这将不再是一个问题。类文件中的ABI版本将是相同的。这在Beta中基本上是正确的,但是在1.0的候选版本中,很快会有一次强制重新编译。