Android `拒绝对以前失败的类消息重新初始化`在牛轧糖中更为详细和常见。
假设我创建了一个具有可选依赖项的库 在Android N中,我看到了更多的Android `拒绝对以前失败的类消息重新初始化`在牛轧糖中更为详细和常见。,android,gradle,android-library,android-7.0-nougat,Android,Gradle,Android Library,Android 7.0 Nougat,假设我创建了一个具有可选依赖项的库 在Android N中,我看到了更多的拒绝重新初始化以前失败的类错误,任何调用这些可选依赖项的错误 例如,假设您的库中有一个使用RecyclerViews的方法。但是,使用您的库的用户不包括RecyclerViews 即使您的库包含一项检查,以确保在不存在依赖项的情况下不会调用此类方法,使用库的人员也会看到以下情况: I/art:拒绝在以前失败的类上重新初始化 java.lang.Class:java.lang.NoClassDefFoundError:失败
拒绝重新初始化以前失败的类
错误,任何调用这些可选依赖项的错误
例如,假设您的库中有一个使用RecyclerViews的方法。但是,使用您的库的用户不包括RecyclerViews
即使您的库包含一项检查,以确保在不存在依赖项的情况下不会调用此类方法,使用库的人员也会看到以下情况:
I/art:拒绝在以前失败的类上重新初始化
java.lang.Class:java.lang.NoClassDefFoundError:失败
决议:
Landroid/support/v7/widget/RecyclerView$RecyclerListener
其中com.foo.bar
是一个类,它包含通过调用可选依赖项的可选方法
在7之前的SDK上,这将只是一条单行消息。然而,在Nougat中,对于调用的每个方法,这是一个20多行的调试日志,完全且绝对地充斥着控制台
这很烦人。对此有什么办法吗