Android studio报: java.lang.ExceptionInInitializerError 错误

所属分类: 软件编程 / Android 阅读数: 26
收藏 0 赞 0 分享

一、问题描述

Android studio导入一个项目报一堆错误:

Process: xhs.com.xhswelcomeanim, PID: 1416
                                   Java.lang.ExceptionInInitializerError
                                     at com.werb.gankwithzhihu.ui.fragment.ZhihuFragment.createPresenter(ZhihuFragment.java:33)
                                     at com.werb.gankwithzhihu.ui.fragment.ZhihuFragment.createPresenter(ZhihuFragment.java:25)
                                     at com.werb.gankwithzhihu.ui.base.MVPBaseFragment.onCreate(MVPBaseFragment.java:35)
                                     at android.support.v4.app.Fragment.performCreate(Fragment.java:2068)
                                     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1055)
                                     at android.support.v4.app.BackStackRecord.setLastIn(BackStackRecord.java:838)
                                     at android.support.v4.app.BackStackRecord.calculateFragments(BackStackRecord.java:861)
                                     at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:719)
                                     at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:1638)
                                     at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:679)
                                     at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:143)
                                     at android.support.v4.view.ViewPager.populate(ViewPager.java:1240)
                                     at android.support.v4.view.ViewPager.populate(ViewPager.java:1088)
                                     at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1614)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1692)
                                     at android.widget.LinearLayout.measureVertical(LinearLayout.java:760)
                                     at android.widget.LinearLayout.onMeasure(LinearLayout.java:629)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.support.design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:700)
                                     at android.support.design.widget.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:90)
                                     at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:1364)
                                     at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:765)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1692)
                                     at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1244)
                                     at android.widget.LinearLayout.onMeasure(LinearLayout.java:631)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.widget.FrameLayout.onMeasure(FrameLayout.java:465)
                                     at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:135)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1692)
                                     at android.widget.LinearLayout.measureVertical(LinearLayout.java:760)
                                     at android.widget.LinearLayout.onMeasure(LinearLayout.java:629)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.widget.FrameLayout.onMeasure(FrameLayout.java:465)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1692)
                                     at android.widget.LinearLayout.measureVertical(LinearLayout.java:760)
                                     at android.widget.LinearLayout.onMeasure(LinearLayout.java:629)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5702)
                                     at android.widget.FrameLayout.onMeasure(FrameLayout.java:465)
                                     at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2785)
                                     at android.view.View.measure(View.java:18026)
                                     at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2456)
                                     at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1440)
                                   
at android.view.View

报 java.lang.ExceptionInInitializerError错误,网上的解析是:

当在静态初始化块中出现了异常的时候,JVM会抛出 java.lang.ExceptionInInitializerError异常。如果你了解Java中的静态变量,你会知道它们是在类加载的时候进行初始化的。如果在这个静态变量初始化的过程中出现了异常,那么就会抛出 java.lang.ExceptionInInitializerError异常。任何异常都可能会引发这种情况,比如说,java.lang.ArrayIndexOutOfBound或者java.lang.NullPointerException。Java开发人员通常会被这个错误弄晕,他觉得自己并没有定义任何的静态初始化块,为什么还会抛出ExceptionInInitializerError异常;事实上,Java默认会将静态变量的初始化放在一个默认的静态初始化块中,然后按它们在源文件中声明的顺序来进行初始化。

二、解决方法

找了半天没发现有什么错误啊,最后在AndroidManifest.xml清单文件中,发现了问题所在:

他在这引用了MaApp这个类:

而MaApp继承的是全局的application这个类,所以在初始化时如果没有引用进来的话,就会报错,而我的那个清单文件中并没有引用进来所以报错了.把他加进来就好了:

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

更多精彩内容其他人还在看

老生常谈Android HapticFeedback(震动反馈)

下面小编就为大家带来一篇老生常谈Android HapticFeedback(震动反馈)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详谈OnTouchListener与OnGestureListener的区别

下面小编就为大家带来一篇详谈OnTouchListener与OnGestureListener的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Android仿知乎悬浮功能按钮FloatingActionButton效果

前段时间在看属性动画,恰巧这个按钮的效果可以用属性动画实现,下面通过本文给大家分享adroid仿知乎悬浮功能按钮FloatingActionButton效果,需要的朋友参考下吧
收藏 0 赞 0 分享

解决Android V7后自定义Toolbar、ActionBar左侧有空白问题

这篇文章主要介绍的Android V7后自定义Toolbar、ActionBar左侧有空白问题的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Android常见控件使用详解

这篇文章主要为大家详细介绍了Android常见控件的使用方法,包括ProgressBar进度条控件、AlertDialog对话框控件等,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android实现简洁的APP更新dialog数字进度条

这篇文章主要为大家详细介绍了Android实现简洁的APP更新dialog数字进度条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android 判断当前语言环境是否是中文环境

本文主要介绍了Android 判断当前语言环境是否是中文环境的方法。具有很好的参考价值。下面跟着小编一起来看下吧
收藏 0 赞 0 分享

详谈Android中Matrix的set、pre、post的区别

下面小编就为大家带来一篇详谈Android中Matrix的set、pre、post的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Android实现登录界面记住密码的存储

这篇文章主要为大家详细介绍了Android SharedPreferrences实现登录界面记住密码的存储,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Android 使用SharedPreferrences储存密码登录界面记住密码功能

Android存储方式有很多种,在这里所用的存储方式是SharedPreferrences, 其采用了Map数据结构来存储数据,以键值的方式存储,可以简单的读取与写入,下面通过实例代码给大家讲解下,需要的朋友参考下吧
收藏 0 赞 0 分享
查看更多