Android:NoClassDefFoundError 仅在发布版本上

2023-11-29

I'm on Android Studio并尝试在发布模式下构建我的项目。
在调试模式下一切正常,但在发布模式下出现以下错误...

08-26 17:59:05.599  31696-31931/? W/System.err﹕ java.lang.NoClassDefFoundError: a.a.b.l
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at java.lang.Class.classForName(Native Method)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at java.lang.Class.forName(Class.java:308)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at java.lang.Class.forName(Class.java:272)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at com.a.a.a.a(Unknown Source)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at com.a.a.a.a(Unknown Source)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at com.a.a.e.b(Unknown Source)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at com.a.a.e.a(Unknown Source)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at com.a.e.a.uncaughtException(Unknown Source)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
08-26 17:59:05.599  31696-31931/? W/System.err﹕ at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
08-26 17:59:05.600  31696-31931/? E/AndroidRuntime﹕ FATAL EXCEPTION: AsyncTask #2
    Process: com.soonoo.mobilecampus, PID: 31696
    java.lang.RuntimeException: An error occured while executing doInBackground()
            at android.os.AsyncTask$3.done(AsyncTask.java:300)
            at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
            at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
            at java.util.concurrent.FutureTask.run(FutureTask.java:242)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
            at java.lang.Thread.run(Thread.java:818)
     Caused by: java.lang.ExceptionInInitializerError
            at a.a.b.l.a(Unknown Source)
            at a.a.b.m.<clinit>(Unknown Source)
            at a.a.b.f.<init>(Unknown Source)
            at a.a.b.e.<init>(Unknown Source)
            at a.a.c.di.b(Unknown Source)
            at a.a.c.di.a(Unknown Source)
            at a.a.c.b.a(Unknown Source)
            at a.a.c.ae.b(Unknown Source)
            at a.a.a.a(Unknown Source)
            at com.soonoo.mobilecampus.mainlist.h.a(Unknown Source)
            at com.soonoo.mobilecampus.mainlist.h.doInBackground(Unknown Source)
            at android.os.AsyncTask$2.call(AsyncTask.java:288)
            at java.util.concurrent.FutureTask.run(FutureTask.java:237)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
            at java.lang.Thread.run(Thread.java:818)
     Caused by: java.lang.NullPointerException: in == null
            at java.util.Properties.load(Properties.java:246)
            at a.a.b.l.d(Unknown Source)
            at a.a.b.l.<clinit>(Unknown Source)
            at a.a.b.l.a(Unknown Source)
            at a.a.b.m.<clinit>(Unknown Source)
            at a.a.b.f.<init>(Unknown Source)
            at a.a.b.e.<init>(Unknown Source)
            at a.a.c.di.b(Unknown Source)
            at a.a.c.di.a(Unknown Source)
            at a.a.c.b.a(Unknown Source)
            at a.a.c.ae.b(Unknown Source)
            at a.a.a.a(Unknown Source)
            at com.soonoo.mobilecampus.mainlist.h.a(Unknown Source)
            at com.soonoo.mobilecampus.mainlist.h.doInBackground(Unknown Source)
            at android.os.AsyncTask$2.call(AsyncTask.java:288)
            at java.util.concurrent.FutureTask.run(FutureTask.java:237)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
            at java.lang.Thread.run(Thread.java:818)

问题是异常消息不显示发生错误的类、方法的名称。
我在项目中使用的所有第三方库均在build.gradle.
我怎样才能解决这个问题?


问题基本上如下:

buildTypes {
        release {
            **minifyEnabled false**
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

如果您将 minifyEnabled 设置为 false,它应该可以解决您的问题。如果你想使用 minify 功能,那么你可以将 progaurd 规则添加到你的 build.gradle 中。例如,对于 Butterknife 库,您必须添加以下内容:

-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewBinder { *; }

-keepclasseswithmembernames class * {
    @butterknife.* <fields>;
}

-keepclasseswithmembernames class * {
    @butterknife.* <methods>;
}

很高兴我能帮上忙

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android:NoClassDefFoundError 仅在发布版本上 的相关文章

  • 如何在用户输入数据后重新运行java代码

    嘿 我有一个基本的java 应用程序 显示人们是成年人还是青少年等 我从java开始 在用户输入年龄和字符串后我找不到如何制作它它们被归类为 我希望它重新运行整个过程 以便其他人可以尝试 的节目 我一直在考虑做一个循环 但这对我来说没有用
  • Java ResultSet 如何检查是否有结果

    结果集 http java sun com j2se 1 4 2 docs api java sql ResultSet html没有 hasNext 方法 我想检查 resultSet 是否有任何值 这是正确的方法吗 if resultS
  • 如何对不同的参数类型使用相同的java方法?

    我的问题 我有 2 个已定义的记录 创建对象请求 更新对象请求 必须通过实用方法进行验证 由于这两个对象具有相同的字段 因此可以对这两种类型应用相同的验证方法 现在我只是使用两种方法进行重载 但它很冗长 public record Crea
  • Android 构建发布失败,原因为:java.lang.ArrayIndexOutOfBoundsException:213(pr​​oguard 问题)

    我的项目使用调试构建变体构建得很好 但使用发布变体 Android Studio 会抛出 引起原因 java lang ArrayIndexOutOfBoundsException 213 可能是什么问题 如果我设置minifyEnable
  • 在我的 Spring Boot 示例中无法打开版本 3 中的 Swagger UI

    我在 Spring Boot 示例中打开 swagger ui 时遇到问题 当我访问 localhost 8080 swagger ui 或 localhost 8080 root api name swagger ui 时出现这种错误 S
  • Intellij Android Studio打开localhost页面登录github

    我正在使用 android studio 版本 4 2 beta 3 当我使用 GUI 推送 获取工作室提示时登录 github 同时我已经设置了一个帐户 奇怪的是 我可以在终端上使用 git 但不能在 GUI 上使用 我选择第一个选项 我
  • Android 中如何通过彩信发送图片?

    我正在开发多媒体应用程序 我正在通过相机捕获一张图像 并希望将该图像和文本发送到其他号码 但我不知道如何通过彩信发送图像 MMS 只是一个 http post 请求 您应该使用执行请求额外的网络功能 final ConnectivityMa
  • 使用 AsyncTask 传递值

    我一直在努力解决这个问题 但我已经到了不知道该怎么办的地步 我想做的是使用一个类下载文件并将其解析为字符串 然后将该字符串发送到另一个类来解析 JSON 内容 所有部件都可以单独工作 并且我已经单独测试了所有部件 我只是不知道如何将值发送到
  • 专门针对 JSP 的测试驱动开发

    在理解 TDD 到底是什么之前 我就已经开始编写测试驱动的代码了 在没有实现的情况下调用函数和类可以帮助我以更快 更有效的方式理解和构建我的应用程序 所以我非常习惯编写代码 gt 编译它 gt 看到它失败 gt 通过构建其实现来修复它的过程
  • OnLongClickListener 不工作

    我有一个ImageView 我需要使用onLongClickListener对于图像视图 当我使用这段代码时 什么也没有发生 Code gallery Gallery findViewById R id gall1 gallery setA
  • 如何在 Android 中从 WorkManager 取消工作?

    我已经保存了 WorkManagerUUID转换成String在领域数据库中 这是代码 Constraints constraints new Constraints Builder setRequiredNetworkType Netwo
  • 您使用什么物理 Android 设备进行测试?

    有什么好的推荐用于测试目的的物理 Android 设备吗 我正在苹果阵营寻找像 iPod touch 这样的设备 可以帮助 iOS 开发人员测试他们的东西 我知道有 Nexus One 但那东西相当昂贵 而且我并不真正关心手机的东西 而是可
  • Android:无法使用 DbHelper 和 Contract 类将数据插入 SQLite

    public class Main2Activity extends AppCompatActivity private EditText editText1 editText2 editText3 editText4 private Bu
  • 上网本上可以进行Android开发吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想使用我的上网本进行 Android 开发 但是当我尝试使用 Eclipse 运行 SDK 时 没有加载任何内容 上网本对于 Android 开发来
  • 包 javax.el 不存在

    我正在使用 jre6 eclipse 并导入 javax el 错误 包 javax el 不存在 javac 导入 javax el 过来 这不应该是java的一部分吗 谁能告诉我为什么会这样 谢谢 米 EL 统一表达语言 是 Java
  • 问题:为什么React Native Video不能全屏播放视频?

    我正在react native 0 57 7 中为android和ios创建一个应用程序并使用反应本机视频 https github com react native community react native video播放上传到的视频
  • 长轮询会冻结浏览器并阻止其他 ajax 请求

    我正在尝试在我的中实现长轮询Spring MVC Web 应用程序 http static springsource org spring docs 2 0 x reference mvc html但在 4 5 个连续 AJAX 请求后它会
  • 在 Android 应用程序资源中使用 JSON 文件

    假设我的应用程序的原始资源文件夹中有一个包含 JSON 内容的文件 我如何将其读入应用程序 以便我可以解析 JSON See 开放原始资源 http developer android com reference android conte
  • 使用 CXF-RS 组件时,为什么我们使用 而不是普通的

    作为后续这个问题 https stackoverflow com questions 20598199 对于如何正确使用CXF RS组件我还是有点困惑 我很困惑为什么我们需要
  • 如何使用 AccessibilityService 在 Android 中模拟按键

    我正在编写一个辅助服务 我一直在尝试在应用程序上进行一些自动搜索 我使用accessibilityservice action paste来填充EditText 然后我需要模拟软键盘上的按键 但我不知道如何做 你们能帮我一下吗 你可以尝试A

随机推荐