Java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/animation/AnimatorCompatHe
今天在开发时studio包如下错误Java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/animation/AnimatorCompatHe
特此记录一下解决方案:
产生的原因因为support或者其他外部引用库的多个版本,Gradle在进行合并的时候会使用本地持有的,最高版本的来进行编译,所以25的support就有可能引用26的东西,就会出现 属性 merge 错误 ,或者Class丢失,解决方法就是强制使用相同版本的库:
解决方案就是在app.gradle文件的android{}标签内添加如下代码
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '25.3.0'
}
}
}
}