出现java.lang.NoClassDefFoundError异常,排除掉classpath设置问题,发现是multidex后导致的。
为什么要用multidex?项目中因方法数超过了65536,所以用到了MultiDex。
经过筛查,发现这里异常是因为multidex落下了compileapplication配置造成的。改正后,解决。
这里放上完整的multidex步骤:
1.在build.gradle中做了如下设置:
android{
...
defaultConfig{
multiDexEnabled true
...
}
dexOptions {
incremental true
javaMaxHeapSize "4g"
}
}
dependencies {
...
compile 'com.android.support:multidex:1.0.0'
}
2.application中添加如下代码
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}