找不到R.layout

时间:2019-02-12 09:29:08

标签: android gradle build

我的问题很奇怪。

当我在PROJECT-LEVEL build.gradle文件中使用com.android.tools.build:gradle:3.3.1时,找不到R.layout。但是当我使用com.android.tools.build:gradle:3.1.0时,R.layout存在!问题是我想使用最新版本的gradle构建工具,但是那样我就没有R.layout!

我尝试导入项目的R,并确保进行了android.R或任何剩余的导入:

import me.testweb.firebaseoauthtest.R;

当我使用版本3.3.1的gradle构建工具时,它告诉我项目的R未解析。哎呀,当我尝试导入R时,它甚至没有在自动完成功能中找到R。

但是当我使用版本3.1.0的构建工具时,它可以正常工作。

PROJECT-LEVEL build.gradle(使用构建工具3.1.0):

buildscript {
    repositories {
        jcenter()
        mavenLocal()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'
        classpath 'com.google.gms:google-services:4.2.0'
        classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.20'
    }
}

allprojects {
    repositories {
        //mavenLocal() must be listed at the top to facilitate testing
        mavenLocal()
        jcenter()
        google()
        maven { url 'https://maven.fabric.io/public' }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

使用最新的构建工具时,预期结果是一切都会顺利进行,并且可以找到项目的R.layout。

实际结果是,当使用构建工具3.3.1时,所有使用R.layout的文件都会中断。

4 个答案:

答案 0 :(得分:1)

使用com.android.tools.build:gradle:3.3.1后,需要将整个项目与gradle文件同步。

Click on icon which shows in picture

完成此操作后,单击Build-> Clean project。

答案 1 :(得分:0)

在使用最新的Gradle构建工具完成Gradle同步之后,您是否尝试过Build -> Clean ProjectBuild -> Rebuild Project

有时候,Android Studio可能有点笨。

答案 2 :(得分:0)

您可以先在

中检查Internet连接
  

文件->设置->外观和行为->系统设置->检查连接。

由于连接不稳定,实现新的依赖项会导致错误,因为它无法下载更新的文件。

然后尝试

  

Build-> Clean Project and Build-> Rebuild Project

答案 3 :(得分:0)

好的。

所以,问题是... InelliJ IDEA是问题所在。我尝试安装Android Studio并通过它打开项目,当我再次将构建工具版本更改为3.3.1(com.android.tools.build:gradle:3.3.1)时,一切都自动运行。我将就此向BugBrains发送错误报告...感谢所有尝试帮助我的人!我将不再使用IDEA。如果有人像我一样遇到此问题,则只需安装Android Studio,不要使用IntelliJ IDEA。它会自行修复,问题将消失。