2017-03-03 41 views
3

我试图从Kotlin 1.0.6升级一些Gradle项目到它的最新版本(1.1.0)。然而,当它到达compileKotlin任务失败:使用Gradle插件找不到Kotlin编译器

:kiwi-common-kotlin:compileKotlin FAILED 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':kiwi-common-kotlin:compileKotlin'. 
> Could not find Kotlin Compiler jar. Please specify compileKotlin.compilerJarFile 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 

BUILD FAILED 

项目本身在一堆子项目的划分。为了避免愚弄,我们与科特林定义一个单独的文件,并使用它导入它的项目:

文件: gradle产出/ kotlin.gradle

buildscript { 

    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" 
    } 

} 

apply plugin: org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper 

compileKotlin { 
    kotlinOptions.jvmTarget = "1.6" 
} 

而且我们输入它像子项目这样的:

apply from: "$rootDir/gradle/kotlin.gradle" 

因为我们以前尝试的早期预览版本,它无缝地工作,我改变了版本几次看到哪个版本的插件爆发。事实证明,它可以工作到1.1-M03;从1.1-M04开始,它显示了与1.1.0版本完全相同的错误。

我们在项目中使用了Gradle 2.10。你能帮我弄清楚它是否是我们配置中的问题?或者Kotlin插件本身的已知问题?

+0

如果您将'apply plugin:org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper '更改为'apply plugin:'kotlin'',它会起作用吗? – hotkey

+1

此外,它看起来类似于这个问题:[KT-16580](https://youtrack.jetbrains.com/issue/KT-16580) – hotkey

+1

@hotkey它不会工作,因为这是一个“共享”文件由实际的构建脚本应用。这是一个已知的Gradle问题:https://discuss.gradle.org/t/how-do-i-apply-a-plugin-to-a-project-from-a-shared-applied-gradle-file/7508/ 2 –

回答

1

原来是Gradle插件的bug。正如热键评论所指出的,更新到v1.1.2可以修复它。