将项目导入为 gradle 时出现错误Cause: unexpected end of block data
。项目有几个模块。我正在使用 Idea 132.719 和 1.8 gradle。
9 回答
我有同样的问题。原来 build.gradle 指定了一个未安装的buildToolsVersion :
android {
buildToolsVersion "18.1"
...
}
而我只安装了 18.1.1。更改build.gradle中的 buildToolsVersion 为我解决了这个问题。如果这不能为您解决问题,仔细检查 Intellij 日志可能会发现问题。
您可以使用Android SDK Manager查看安装了哪个版本的构建工具。
只需打开app/src/main/build.gradle
,Android Studio 可能会在文本版本上突出显示黄色buildToolsVersion
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion "19.1.0" //<--- THIS PART WILL BE HIGHLIGHTED
defaultConfig {
...
这意味着 Gradle 尝试使用安装了错误版本的 Gradle 构建工具进行编译。通常版本会更低。
然后打开Tools->Android->SDK Manager
并找到最高版本Android SDK Build-Tools
并编写该版本。就我而言,它是 19.1。
重新编译,它会工作。
安装 Android Studio 版本0.6.1后我遇到了同样的问题。\app\build.gradle中的buildToolsVersion指向正确的版本(19.0.3),但是通过将其更改为版本 19.1解决了问题
android {
compileSdkVersion 19
buildToolsVersion "19.1" // <- This was changed from 19.0.3
...
如果使用 gradlew 的命令行版本,对于此类问题的一个很好的提示,它可以为您提供更多有用的信息,对于上述问题,它可能如下所示:
Android工作室的错误代码
Gradle 'bluetooth-new-circle' 项目刷新失败
错误:原因:块数据意外结束
来自同一项目的命令行 gradlew 的错误代码:
~/source_code/bluetooth$ ./gradlew clean assembleDebug :AccessoryController:clean UP-TO-DATE :BluetoothAudioProxy:clean UP-TO-DATE :BluetoothGatt:clean UP-TO-DATE :ScaleMonitor:clean UP-TO-DATE :UsbMonitor:清理 UP-TO-DATE :AccessoryController:preBuild FAILED
FAILURE:构建失败并出现异常。
出了什么问题:任务“:AccessoryController:preBuild”执行失败。
SDK 构建工具修订版 (19.0.2) 对于项目“:AccessoryController”来说太低了。最低要求是 19.1.0
尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。
构建失败
总时间:10.078 秒 ~/source_code/bluetooth$
我在你的评论中看到,@SergeyB,在你的用户目录中删除 .gradle 没有帮助,但这些步骤解决了我的问题(有类似的症状):
- 从用户目录 (\Users\Mark.gradle) 中删除 .gradle 目录
- 删除 GRADLE_HOME 环境变量(如果已设置)
- 删除 Gradle 的“手动”安装(不需要,因为当您运行 gradlew 包装器时,Gradle 会自动下载必要的文件)
- 从命令行运行“gradlew”,并确认新文件已下载
- 从命令行运行 gradle build(例如,“gradlew clean assemble”)
- 如果遇到 SDK 版本不匹配错误,例如“failed to find target android-18”,请务必下载对应的 Android SDK(可以通过 Android Studio 中的 SDK Manager 完成)
- 一旦您可以从命令行构建,请在 IDE 中重试
很晚的答案,我相信你不再关心了,但其他人可能会。
- 文件 -> 使缓存无效/重新启动
- 关闭 Android Studio
- 重命名/删除用户主目录中的 .gradle 文件夹
- 重启 Android Studio 让它下载它需要的所有 Gradle 东西
- Gradle 构建成功!
- 重建项目....成功!
希望这可以帮助 。
我也有同样的问题。我通过设置 ANDROID_HOME 环境变量解决了这个问题。export ANDROID_HOME=/android_sdk_root_dir
希望这可以帮助。
尝试在 Gradle 中应用idea插件并运行它。.ipr
然后使用生成的文件在 IntellijIDEA 中打开项目。
是的,
STEP 1:打开模块 build.gradle 并找到 buildToolsVersion。
STEP 2:将数值修改为警告值。