2016-05-09 105 views
0

我想在我的一個項目中使用Realm適配器。但是我無法使用它。無法使用RealmAdapter - java.lang.NoClassDefFoundError:失敗的解決方案:Landroid/support/v7/widget/TintManager;

當我添加compile 'io.realm:android-adapters:1.0.1'到gradle文件。項目編譯成功,但該應用程序崩潰tabLayout.setupWithViewPager(viewPager); - 我將viewpager添加到tabLayout的行。當我評論compile 'io.realm:android-adapters:1.0.1'

我附上activiy其中其崩潰的截圖

應用程序成功運行。它崩潰的第57行我也粘貼錯誤

enter image description here

05-09 22:11:48.074 16932-16932/com.app E/AndroidRuntime: FATAL EXCEPTION: main 
                 Process: com.app, PID: 16932 
                 java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/widget/TintManager; 
                  at android.support.design.widget.TabLayout$TabView.<init>(TabLayout.java:1185) 
                  at android.support.design.widget.TabLayout.createTabView(TabLayout.java:656) 
                  at android.support.design.widget.TabLayout.addTabView(TabLayout.java:695) 
                  at android.support.design.widget.TabLayout.addTab(TabLayout.java:386) 
                  at android.support.design.widget.TabLayout.addTab(TabLayout.java:361) 
                  at android.support.design.widget.TabLayout.setTabsFromPagerAdapter(TabLayout.java:645) 
                  at android.support.design.widget.TabLayout.setupWithViewPager(TabLayout.java:616) 
                  at com.app.MainActivity.onCreate(MainActivity.java:57) 
                  at android.app.Activity.performCreate(Activity.java:6251) 
                  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
                  at android.app.ActivityThread.-wrap11(ActivityThread.java) 
                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
                  at android.os.Handler.dispatchMessage(Handler.java:102) 
                  at android.os.Looper.loop(Looper.java:148) 
                  at android.app.ActivityThread.main(ActivityThread.java:5422) 
                  at java.lang.reflect.Method.invoke(Native Method) 
                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
                  Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v7.widget.TintManager" on path: DexPathList[[zip file "/data/app/com.app-1/base.apk"],nativeLibraryDirectories=[/data/app/com.app-1/lib/arm64, /data/app/com.app-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.support.design.widget.TabLayout$TabView.<init>(TabLayout.java:1185)  
                  at android.support.design.widget.TabLayout.createTabView(TabLayout.java:656)  
                  at android.support.design.widget.TabLayout.addTabView(TabLayout.java:695)  
                  at android.support.design.widget.TabLayout.addTab(TabLayout.java:386)  
                  at android.support.design.widget.TabLayout.addTab(TabLayout.java:361)  
                  at android.support.design.widget.TabLayout.setTabsFromPagerAdapter(TabLayout.java:645)  
                  at android.support.design.widget.TabLayout.setupWithViewPager(TabLayout.java:616)  
                  at com.app.MainActivity.onCreate(MainActivity.java:57)  
                  at android.app.Activity.performCreate(Activity.java:6251)  
                  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)  
                  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)  
                  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  
                  at android.app.ActivityThread.-wrap11(ActivityThread.java)  
                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)  
                  at android.os.Handler.dispatchMessage(Handler.java:102)  
                  at android.os.Looper.loop(Looper.java:148)  
                  at android.app.ActivityThread.main(ActivityThread.java:5422)  
                  at java.lang.reflect.Method.invoke(Native Method)  
                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)  
                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)  
                  Suppressed: java.lang.ClassNotFoundException: android.support.v7.widget.TintManager 
                  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) 
                    ... 21 more 
                  Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available 

這裏的堆棧跟蹤是的build.gradle文件從應用程序的片段 -

dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
testCompile 'junit:junit:4.12' 
compile 'com.android.support:appcompat-v7:23.1.0' 
compile 'com.android.support:design:23.1.1' 
compile 'com.jakewharton:butterknife:7.0.1' 
compile 'com.rengwuxian.materialedittext:library:2.1.4' 
compile 'com.android.support:cardview-v7:23.1.0' 
compile 'com.github.paolorotolo:appintro:3.2.0' 
compile 'io.realm:android-adapters:1.0.1' 

}

回答

1

所有支持庫必須具有相同的版本。 23.1.0或23.1.1或任何其他,但你不能使用不同的版本。

嘗試對所有庫使用23.3.0

compile fileTree(dir: 'libs', include: ['*.jar']) 
testCompile 'junit:junit:4.12' 
compile 'com.android.support:appcompat-v7:23.3.0' 
compile 'com.android.support:design:23.3.0' 
compile 'com.jakewharton:butterknife:7.0.1' 
compile 'com.rengwuxian.materialedittext:library:2.1.4' 
compile 'com.android.support:cardview-v7:23.3.0' 
compile 'com.github.paolorotolo:appintro:3.2.0' 
compile 'io.realm:android-adapters:1.0.1' 

More reference

1

io.realm:android-adapters:1.0.1需要23.3.0或更高版本appcompat-v7

順便說一下,我建議使用支持版本的變量。 (它應該在所有支持庫中相同)。

def supportVersion = '23.3.0' 
compile fileTree(dir: 'libs', include: ['*.jar']) 
testCompile 'junit:junit:4.12' 
compile "com.android.support:appcompat-v7:$supportVersion" 
compile "com.android.support:design:$supportVersion" 
compile 'com.jakewharton:butterknife:7.0.1' 
compile 'com.rengwuxian.materialedittext:library:2.1.4' 
compile "com.android.support:cardview-v7:$supportVersion" 
compile 'com.github.paolorotolo:appintro:3.2.0' 
compile 'io.realm:android-adapters:1.0.1' 
相關問題