Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android app runs on Dalvik but crashes with NoClassDefFoundError on Android Runtime

Tags:

java

android

My application runs just fine on Dalvik, but when I attempt to run it on ART I get a NoClassDefFoundError. I'm using Android Studio 0.6.1

Here is the stack trace:

06-20 16:13:05.376  16008-16008/com.myapp.android I/art﹕ Rejecting re-init on
previously-failed class java.lang.Class<net.sf.cglib.transform.AbstractProcessTask>
06-20 16:13:05.376  16008-16008/com.myapp.android D/AndroidRuntime﹕ Shutting down VM
06-20 16:13:05.376  16008-16008/com.myapp.android E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.myapp.android, PID: 16008
java.lang.NoClassDefFoundError: net.sf.cglib.transform.AbstractProcessTask
        at java.lang.Class.classForName(Native Method)
        at java.lang.Class.forName(Class.java:305)
        at com.droidbase.Loader.getClassForFile(Loader.java:155)
        at com.droidbase.Loader.getClassesForFiles(Loader.java:145)
        at com.droidbase.Loader.getAllClasses(Loader.java:64)
        at com.droidbase.Loader.getClassesExtending(Loader.java:54)
        at com.droidbase.DroidBase.getModels(DroidBase.java:87)
        at com.droidbase.DroidBase.loadModels(DroidBase.java:97)
        at com.droidbase.DroidBase.setup(DroidBase.java:66)
        at com.droidbase.DroidBase.initialize(DroidBase.java:23)
        at com.droidbase.DroidBase.setup(DroidBase.java:27)
        at com.myapp.android.MyApplication.onCreate(MyApplication.java:22)
        at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4328)
        at android.app.ActivityThread.access$1500(ActivityThread.java:135)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5001)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
like image 307
Prashan Dharmasena Avatar asked Dec 20 '25 23:12

Prashan Dharmasena


1 Answers

It turns out I was missing a dependency in my Gradle file. In my case I needed to add the line compile 'org.apache.ant:ant:1.9.4' to my dependencies. Why this worked on Dalvik but not ART is beyond me.

like image 197
Prashan Dharmasena Avatar answered Dec 22 '25 13:12

Prashan Dharmasena



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!