pardom-zz / ActiveAndroid

Active record style SQLite persistence for Android
http://www.activeandroid.com
4.7k stars 1.03k forks source link

java.lang.NoClassDefFoundError: butterknife.internal.ButterKnifeProcessor #382

Open luhaiwork opened 9 years ago

luhaiwork commented 9 years ago

I use nexus 5 system version is 5.1 . When I use ActiveAndroid find the error: java.lang.NoClassDefFoundError: butterknife.internal.ButterKnifeProcessor.I searched some relative problem such as https://github.com/JakeWharton/butterknife/issues/236. The detail error is Process: com.toc.qtx.activity, PID: 9115 java.lang.NoClassDefFoundError: butterknife.internal.ButterKnifeProcessor at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:309) at com.activeandroid.ReflectionUtils.getModelClasses(ReflectionUtils.java:83) at com.activeandroid.DatabaseHelper.onCreate(DatabaseHelper.java:46) at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:251) at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163) at com.activeandroid.Registry.openDatabase(Registry.java:149) at com.activeandroid.Registry.initialize(Registry.java:107) at com.activeandroid.ActiveAndroid.initialize(ActiveAndroid.java:8) at com.activeandroid.app.Application.onCreate(Application.java:9) at com.toc.qtx.base.OrderApplication.onCreate(OrderApplication.java:54) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1012) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4553) at android.app.ActivityThread.access$1500(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

Ivanpaz91 commented 8 years ago

I got that issue,too

nilkashid commented 8 years ago

Same issue for me as well. Any update on it?

Ivanpaz91 commented 8 years ago

Sure. Use the Active Android 3.0 jar It will be fine.

iamdeadman commented 6 years ago

similar issue on my setup with dagger, butterknife setup. The error arises from here -

   try {
        mApplicationComponent = DaggerApplicationComponent.builder()
                .applicationModule(new ApplicationModule(this)).build();
        mApplicationComponent.inject(this);
    } catch (Exception e){
        Log.d("error", e.getMessage());
    }

I have posted more details about this issue here -

https://stackoverflow.com/questions/50307897/dagger2-inject-database-in-a-contentprovider-error-noclassdeffounderror-dbopen

Also, @Ivanpaz91 what is this solution that you are proposing for using Android 3.0 jar ? What are the issues with support v4 ? Can you please elaborate a little more on your problem & solution that worked for you