无法为类型的任务':: processDebugResources'获取未知属性'packageForR'

时间:2018-02-09 20:12:27

标签: android android-gradle

错误:我想将Realm数据库从版本4.2.0更新到4.3.3,但在gradle sync之后,它将失败

目标

将Realm从4.2.0更新为4.3.3

预期结果

Gradle sync将成功

实际结果

gradle sync与stacktrace失败:

Error:Execution failed for task ':QuizApp:processDebugResources'.
Could not get unknown property 'packageForR' for task 
':QuizApp:processDebugResources' of type 
com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask.

顶级gradle文件

buildscript {
repositories {
    jcenter { url 'http://jcenter.bintray.com/' }
    maven { url 'https://maven.fabric.io/public' }
    maven { url "https://plugins.gradle.org/m2/" }
    jcenter()
    mavenCentral()
    google()
}
dependencies {
    // classpath 'com.android.tools.build:gradle:3.0.1'
    classpath 'com.android.tools.build:gradle:3.2.0-alpha01'

    classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
    classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7'
    classpath 'io.fabric.tools:gradle:1.+'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath "com.github.nullstress:DependencyAnalysisPlugin:1.0.3"
    classpath 'com.google.gms:google-services:3.1.0'
    classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'
    classpath "io.realm:realm-gradle-plugin:4.3.2"
    classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.2'
}
  }

我尝试清理gradle缓存并停止gradle守护程序。然后重试构建。但问题仍然存在

2 个答案:

答案 0 :(得分:36)

如果您使用 ButterKnife ,只需删除 ButterKnife gradle插件 ,然后使用 annotationProcessor + implementation 版本代替。见下面的步骤:

  1. 删除gradle中的apply plugin: 'com.jakewharton.butterknife'
  2. 只需在gradle中使用/添加以下依赖项:

    dependencies {
        implementation 'com.jakewharton:butterknife:8.8.1'
        annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
    }
    

答案 1 :(得分:7)

我从gradle插件更新后遇到类似的问题:

classpath 'com.android.tools.build:gradle:3.0.1'

classpath 'com.android.tools.build:gradle:3.1.0'

在我的情况下,问题是由butterknife插件引起的,它与不比3.0.1更新的gradle插件兼容

不幸的是我还没有解决这个问题。我不得不将gradle插件降级到3.0.1。

现在我正在寻找更新版本的butterknife插件。

更新

https://github.com/JakeWharton/butterknife/issues/1201

https://github.com/realm/realm-java/issues/5731