【问题标题】:Android aar file Inside a Library module - NoClassDefFoundError库模块内的 Android aar 文件 - NoClassDefFoundError
【发布时间】:2018-12-03 10:32:25
【问题描述】:

我有一个外部库(constants.aar) 文件。我已将此.aar 文件保存在我的Android 库模块项目的(sdk-module)/lib 文件夹中。这个sdk-module 的类使用来自constants.aar 的方法。

编译sdk-module 会生成sdk-module.aar 文件。

在我的应用程序中,我包含了这个sdk-module.aar 文件。当我尝试使用sdk-module 的某些类文件时,我得到NoClassDefFoundError

java.lang.NoClassDefFoundError: 解析失败: "class file from constant.aar"; 原因:java.lang.ClassNotFoundException:在路径上找不到类“xyz”:

我已经解压了sdk-module.aar 文件,我可以看到constants.aar 文件在其/lib 文件夹中可用。

如何解决这个问题?

【问题讨论】:

标签: android


【解决方案1】:
android {
    defaultConfig {
        ....
        multiDexEnabled true // Add this line in your build.gradle file
    }

dependencies {
    implementation 'com.android.support:multidex:1.0.3'
}

扩展:ApplicationClass.java 中的 MultiDexApplication 类

public class BusinessCardApplication extends MultiDexApplication { ... }

MultiDex.install(this); //add this line

要么,请参阅此库的问题文件。如果它来自库的问题,则还定义此错误详细信息

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 2017-01-30
    • 2017-07-09
    • 1970-01-01
    相关资源
    最近更新 更多