【问题标题】:Android java.lang.ClassNotFoundException: Didn't find classAndroid java.lang.ClassNotFoundException:找不到类
【发布时间】:2020-08-11 22:48:35
【问题描述】:

我在这里是一个完全的 Android 新手,所以希望有人可以帮助我。

我有一个 Android 库 (myLib.aar),我在 HelloAR demo app 中包含/使用它。 现在,我想在myLib.aar 中使用Instacapture。我按照自述文件中的说明进行操作:

dependencies {
    ...
     compile "com.github.tarek360:instacapture:2.0.1"
}

allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}

我还尝试下载、编译 instacapture 源,将 instacapture.aar 添加到我的 libs 目录并修改我的 Gradle 文件:

dependencies{
    ...
    implementation(name:'instacapture', ext:'aar')
}

allprojects {
   repositories {
       ...
       flatDir {
           dirs 'libs'
       }
}

在这两种情况下,我都会遇到以下异常:

    --------- beginning of crash
2020-08-11 22:34:35.965 32761-32761/com.google.ar.core.examples.java.helloar E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.google.ar.core.examples.java.helloar, PID: 32761
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/tarek360/instacapture/Instacapture;
        at com.cambridge.myLib.ScreenShotter.takeScreenshot(ScreenShotter.java:139)
        at com.google.ar.core.examples.java.helloar.HelloArActivity$2.run(HelloArActivity.java:164)
        at com.google.ar.core.examples.java.helloar.HelloArActivity.startRepeatingTask(HelloArActivity.java:171)
        at com.google.ar.core.examples.java.helloar.HelloArActivity$1.run(HelloArActivity.java:152)
        at android.os.Handler.handleCallback(Handler.java:883)
        at android.os.Handler.dispatchMessage(Handler.java:100)
        at android.os.Looper.loop(Looper.java:237)
        at android.app.ActivityThread.main(ActivityThread.java:8107)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.tarek360.instacapture.Instacapture" on path: DexPathList[[zip file "/data/app/com.google.ar.core.examples.java.helloar-bhCcJ--GEjsJ6mxAFvnUYw==/base.apk"],nativeLibraryDirectories=[/data/app/com.google.ar.core.examples.java.helloar-bhCcJ--GEjsJ6mxAFvnUYw==/lib/arm64, /data/app/com.google.ar.core.examples.java.helloar-bhCcJ--GEjsJ6mxAFvnUYw==/base.apk!/lib/arm64-v8a, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:196)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at com.cambridge.myLib.ScreenShotter.takeScreenshot(ScreenShotter.java:139) 
        at com.google.ar.core.examples.java.helloar.HelloArActivity$2.run(HelloArActivity.java:164) 
        at com.google.ar.core.examples.java.helloar.HelloArActivity.startRepeatingTask(HelloArActivity.java:171) 
        at com.google.ar.core.examples.java.helloar.HelloArActivity$1.run(HelloArActivity.java:152) 
        at android.os.Handler.handleCallback(Handler.java:883) 
        at android.os.Handler.dispatchMessage(Handler.java:100) 
        at android.os.Looper.loop(Looper.java:237) 
        at android.app.ActivityThread.main(ActivityThread.java:8107) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100) 

但是,如果我将依赖项添加到主 HelloAR 应用程序(按照自述文件中的说明),问题就会解决。

有人可以解释发生了什么,为什么我会收到错误,以及如何在无需将依赖项添加到主 HelloAR 应用程序的情况下解决它?

【问题讨论】:

  • 你运行的是什么版本的 Android Studio?
  • @kabumere Android Studio 4.0: Build #AI-193.6911.18.40.6514223, built on May 20, 2020 Runtime version: 1.8.0_242-release-1644-b3-6222593 x86_64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

标签: android dependencies


【解决方案1】:

考虑到您的报价,

我在这里是一个完全的 Android 新手,所以希望有人可以帮助我。

按照以下步骤(在 android studio 中):

  1. 转到build 菜单。
  2. 通过单击清理项目清理项目。
  3. 通过单击 make project 构建项目。

此过程称为clean build,通常在添加一些依赖项后完成。

【讨论】:

    猜你喜欢
    • 2021-11-02
    • 2016-12-19
    • 2019-08-22
    • 2014-11-28
    • 2021-08-30
    • 2019-05-11
    • 2018-04-04
    • 2019-09-19
    • 1970-01-01
    相关资源
    最近更新 更多