1. 程式人生 > >【Android學習筆記】NoSuchMethodError: com.google.common.base.CharMatcher.whitespace()

【Android學習筆記】NoSuchMethodError: com.google.common.base.CharMatcher.whitespace()

最近在學習用dagger2加上了dataBinding 後,發現dagger2 編譯不了,錯誤如下:

Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> java.lang.NoSuchMethodError: com.google.common.base.CharMatcher.whitespace()Lcom/google/common/base/CharMatcher;

於是google了一下,看了這篇文章:https://code.google.com/p/android/issues/detail?id=214615,大致發現可能是gradle版本問題,我之前出問題的時候,版本如下:
 dependencies {
        classpath 'com.android.tools.build:gradle:2.1.0'
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }

解決方案:

把gradle版本改成2.2.0,gradle-wrapper.properties檔案裡面再改成2.14.1,再編譯下即可

distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip