我有一个包含10个外部模块的大项目。显然我已经启用了multidex,因为总方法超过了100k。
现在,如果我在项目中添加“facebook-android”依赖项,那么当我启动应用程序时,我会遇到一些错误ClassNotFound。似乎该类未加载到classes.dex
。如果删除此依赖项,则一切正常。
我确实是这个错误:
Suppressed: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
答案 0 :(得分:0)
实际上启用multidex时。应用程序启动后,应用程序将加载所有其他dexes。我发布了一些代码。
public static void install(Context context) {
Log.i("MultiDex", "install");
if(IS_VM_MULTIDEX_CAPABLE) {
Log.i("MultiDex", "VM has multidex support, MultiDex support library is disabled.");
} else if(VERSION.SDK_INT < 4) {
throw new RuntimeException("Multi dex installation failed. SDK " + VERSION.SDK_INT + " is unsupported. Min SDK version is " + 4 + ".");
}
所以