我从github下载了一个项目,然后尝试构建它。
但是,一旦Gradle运行,Android Studio(2.3.3)的事件日志就会向我显示:
Gradle sync failed: Cause: com/android/build/gradle/BaseExtension
Consult IDE log for more details (Help | Show Log)
还
Error:(18, 0) com/android/build/gradle/BaseExtension
<a href="openFile:C:\Users\Gustavo\AndroidStudioProjects\simpletask-android\app\build.gradle">Open File</a>
似乎Gradle找不到Kotlin,但我不知道如何改变它。
安装并更新Kotlin(版本1.1.3)。
它还被配置为项目中“app”模块的依赖项。
但是,如最后一张图所示,项目看到的外部库的版本是1.0.6而不是1.1.3。
这是问题吗? 如何更改此外部库?
答案 0 :(得分:4)
在我的情况下,我必须将所有内容放入app/build.gradle
(而不是root build.gradle):
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
如果我将上面的块放在根build.gradle
中,我会得到与您相同的错误...
答案 1 :(得分:2)
与@mbonnin类似,但在相反的方向,我不得不将构建工具依赖项从app/build.gradle
移动到根build.gradle
。
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.android.tools.build:gradle:3.0.0-beta6'
}
答案 2 :(得分:0)
在build.gradle(应用级别)中尝试此操作
第一
apply plugin: 'kotlin-android'
第二个依赖
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
修改
这是项目级别的gradle
buildscript {
ext.kotlin_version = '1.1.3'
ext.android_plugin_version = '2.2.0-alpha4'
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
并在app level gradle
android {
dataBinding {
enabled = true
}
}