java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
다음과 같이 잘못 보고되었습니다.
java.lang.RuntimeException: Unable to instantiate application com.ztph.mall.ZTPHApplication: java.lang.ClassNotFoundException: Didn't find class "com.ztph.mall.ZTPHApplication"on path: DexPathList[[zip file "/data/app/com.ztph.mall-1/base.apk"],nativeLibraryDirectories=[/data/app/com.ztph.mall-1/lib/arm64,/data/app/com.ztph.mall-1/base.apk!/lib/arm64-v8a,/vendor/lib64,/system/lib64]] at android.app.LoadedApk.makeApplication(LoadedApk.java:591) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4937) at android.app.ActivityThread.access$1700(ActivityThread.java:180) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1555) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:207) at android.app.ActivityThread.main(ActivityThread.java:5791) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:901) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.ztph.mall.ZTPHApplication"on path: DexPathList[[zip file "/data/app/com.ztph.mall-1/base.apk"],nativeLibraryDirectories=[/data/app/com.ztph.mall-1/lib/arm64,/data/app/com.ztph.mall-1/base.apk!/lib/arm64-v8a,/vendor/lib64,/system/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) at android.app.Instrumentation.newApplication(Instrumentation.java:986) at android.app.LoadedApk.makeApplication(LoadedApk.java:586) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4937) at android.app.ActivityThread.access$1700(ActivityThread.java:180) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1555) at android.os.Handler.dispatchMessage(Handler.java:111) at android.os.Looper.loop(Looper.java:207) at android.app.ActivityThread.main(ActivityThread.java:5791) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:901) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:762) Suppressed: java.lang.ClassNotFoundException: com.ztph.mall.ZTPHApplication at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 12 more Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
그때는 이상했다. 프로젝트가 제3자 so 라이브러리에 도입되었기 때문에 라이브러리 원인인 줄 알았고git에서 프로젝트 clone을 한 번 더 사용했다. 이전에 문제가 없었던 코드 노드를 컴파일하여 포장했는지, 아니면 오류를 보고했는지, 이어서 인터넷에서 구 버전의 안드로이드 스튜디오를 다운로드하고 인터넷에서 같은 오류를 보고한 원인을 찾았다.등등 일련의 고생을 했지만 문제는 여전히 최종적으로 해결되지 못했다.하루 종일 고생한 끝에 영감이 떠올라 구 버전의gradle로 바꾸었다.
:
build.gradle :
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
gradle 파일 디렉터리의gradle-wrapper.properties 수정:
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
gradle 버전을 수정한 후 패키지 실행을 시작했습니다. 이 오류는 더 이상 보고되지 않았습니다. 문제가 완벽하게 해결되었습니다.나는 원래는 모두gradle 포장의 문제였다고 말하고 싶었다...아이구
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.