我的代码:
//顶级构建文件,您可以在其中添加配置选项 所有子项目/模块都是通用的。
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.2.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: Delete) { delete rootProject.buildDir }
这里是错误日志:
错误:(1,0)原因:启动失败: 构建文件'D:\ Doctor \ build.gradle':1:变量名无效。必须以字母开头,但是: 。在[1:1] @第1行,第1列。 //顶级构建文件,您可以在其中添加所有子项目/模块共有的配置选项。 ^
1 error <a href="openFile:D:\Doctor\build.gradle">Open File</a>
答案 0 :(得分:1)
我遇到了同样的问题并找到了解决方法来修复它。但是,我不知道问题是如何发生的。
问题是build.gradle文件已损坏。我做了一个文件的十六进制转储,这是我发现的:
$ hexdump -C build.gradle | more
00000000 ef bb bf 2f 2f 20 54 6f 70 2d 6c 65 76 65 6c 20 |...// Top-level |
00000010 62 75 69 6c 64 20 66 69 6c 65 20 77 68 65 72 65 |build file where|
00000020 20 79 6f 75 20 63 61 6e 20 61 64 64 20 63 6f 6e | you can add con|
00000030 66 69 67 75 72 61 74 69 6f 6e 20 6f 70 74 69 6f |figuration optio|
00000040 6e 73 20 63 6f 6d 6d 6f 6e 20 74 6f 20 61 6c 6c |ns common to all|
00000050 20 73 75 62 2d 70 72 6f 6a 65 63 74 73 2f 6d 6f | sub-projects/mo|
00000060 64 75 6c 65 73 2e 0d 0a 0d 0a 62 75 69 6c 64 73 |dules.....builds|
00000070 63 72 69 70 74 20 7b 0d 0a 0d 0a 20 20 20 20 72 |cript {.... r|
00000080 65 70 6f 73 69 74 6f 72 69 65 73 20 7b 0d 0a 20 |epositories {.. |
请注意,文件以十六进制值ef bb bf开头。这些字符通常不可显示,因此您不知道它们在您的文件中。那些不好的角色是造成这个问题的原因。你需要摆脱它们。我不知道遇到这个问题的每个人是否会有相同的值,但build.grade应该是一个文本文件,那些不是可显示的文本字符。我注意到即使你删除了第一行,那些坏字符仍然存在于文件中,并且你会遇到不同的错误。在我的情况下,它说它找不到&#34; buildscript()&#34;。我所做的纠正问题的方法是进入编辑器,选择文件末尾的第一行并复制内容。然后我打开了一个新的编辑器并粘贴了内容并保存了文件。我将它保存到build2.gradle。然后我删除了build.gradle,然后将build2.gradle重命名为build.gradle。我做了另一个hexdump,发现那些坏人物已经消失了。然后我就能同步我的项目了。
我不知道那些不好的角色是如何进入文件的,但这里或多或少是我所做的:我将一个项目的全部内容复制到一个新的项目位置并在同步过程中我正在讨论这个问题。我也从android 8.0改为8.1,从4.2改为4.4。 Android Studio检测到一些问题,并要求我关闭项目并重新打开它,所以我这样做了。我出于某种原因怀疑文件损坏时的情况,但我不确定。