最近在学习用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