Intellij Idea导入gradle项目错误 - "原因:块数据意外结束"

Ser*_*kyi 10 intellij-idea gradle

导入项目作为gradle时有错误Cause: unexpected end of block data.项目有几个模块.我正在使用Idea 132.719和1.8 gradle.

Gun*_*man 25

我有同样的问题.原来build.gradle指定了一个未安装的buildToolsVersion:

android {
    buildToolsVersion "18.1"
    ...
}
Run Code Online (Sandbox Code Playgroud)

虽然我只安装了18.1.1.更改build.gradle中的buildToolsVersion为我修复了问题.如果这不能解决您的问题,仔细检查Intellij日志可能会发现问题.

您可以使用Android SDK Manager查看安装了哪个版本的构建工具.


san*_*one 7

只需打开app/src/main/build.gradle,Android Studio可能会在文本版本上突出显示黄色buildToolsVersion

apply plugin: 'android'

android {
    compileSdkVersion 19
    buildToolsVersion "19.1.0"  //<--- THIS PART WILL BE HIGHLIGHTED

    defaultConfig {
    ...
Run Code Online (Sandbox Code Playgroud)

这意味着Gradle尝试使用安装的错误版本的Gradle构建工具进行编译.通常版本会更低.

打开然后Tools->Android->SDK Manager找到最高版本Android SDK Build-Tools并编写该版本.就我而言,它是19.1.

在此输入图像描述

重新编译,它会工作.


Mar*_*and 2

我在您的评论中看到,@SergeyB,删除用户目录中的 .gradle 没有帮助,但这些步骤解决了我的问题(有类似的症状):

  • 从用户目录中删除 .gradle 目录 (\Users\Mark.gradle)
  • 删除 GRADLE_HOME 环境变量(如果已设置)
  • 删除 Gradle 的“手动”安装(这不是必需的,因为当您运行 gradlew 包装器时 Gradle 会自动下载必要的文件)
  • 从命令行运行“gradlew”,并确认新文件已下载
  • 从命令行运行 gradle 构建(例如“gradlew clean assemble”)
  • 如果出现 SDK 版本不匹配错误,例如“无法找到目标 android-18”,请务必下载相应的 Android SDK(可以通过 Android Studio 中的 SDK Manager 完成)
  • 一旦可以从命令行构建,请在 IDE 中重试