bug_ _小心android-support-v4.jar版本混乱造成的NoClassDefFoundError

当你的项目出现以下红色提示的时候,要小心了, 因为很可能因为这个错误而导致解释不通的异常出现。

Found 2 versions of android-support-v4.jar in the dependency list,but not all the versions are identical (check is based on SHA-1 only at this time).

这个错误是因为导入的某个jar包版本跟第三方库的jar版本不一致造成的。

最常见的是android-support-v4.jar这个jar文件,一般我们自己的项目会用到,而第三方库往往也会用到,如果这两个jar的版本不一致,就会出现问题(往往编译能通过)。

以下是我运行之后遇到的异常:

java.lang.NoClassDefFoundError: com.jcodecraeer.devandroid.MainActivity

NoClassDefFoundError是指类型未找到,但是我很确信这个类是绝对ok的。

如果报出这个异常你按照常理去找错误会浪费你很多时间,而且解决不了问题。

其实我们只要将两个android-support-v4.jar都用一个就行了,删除自己项目中的,把第三方库中的jar copy进来,或者反过来也行。

不得不说,有时候开发anroid 真的很让人抓狂、、、

时间: 04-05

bug_ _小心android-support-v4.jar版本混乱造成的NoClassDefFoundError的相关文章

缺少android.support.v4.jar builder path 导入 v4.jar包 Error inflating class android.support.v4.view.ViewPager

04-10 18:57:54.656: E/AndroidRuntime(6346): FATAL EXCEPTION: main04-10 18:57:54.656: E/AndroidRuntime(6346): java.lang.RuntimeException: Unable to start activity ComponentInfo{cn.learn.tabhosttest/cn.learn.tabhosttest.ViewPagerActivity}: android.view

Eclipse查看android.support.v4中的源码

1.ADT会自动将android.support.v4.jar添加到项目中的libs中 android-support-v4.jar.properties配置文件是需要自己创建的 在该文件中写入SDK中extras/android/support/v4/src即android.support.v4的路径,且注意要//号,并加上前面的src = 如图所示: 关闭工程并重新打开,则能够获取到源码:

[转]android.support.v4.app.Fragment和android.app.Fragment区别

1.最低支持版本不同 android.app.Fragment 兼容的最低版本是android:minSdkVersion="11" 即3.0版 android.support.v4.app.Fragment 兼容的最低版本是android:minSdkVersion="4" 即1.6版 2.需要导jar包 fragment android.support.v4.app.Fragment 需要引入包android-support-v4.jar 3.在Activity

Android Support v4、v7、v13的区别和应用场景

google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如fragement,ViewPager等,下面,简单说明下这几个版本间的区别: Android Support v4:  这个包是为了照顾1.6及更高版本而设计的,这个包是使用最广泛的,eclipse新建工程时,都默认带有了.     Android Support v7:  这个包是为了考虑照顾2.1

安卓开发错误:The type android.support.v4.app.TaskStackBuilder$SupportParentable cannot be resolved.

今天在使用低版本下的ActionBar,在继承ActionBarActivity时报了"The type Android.support.v4.app.TaskStackBuilder$SupportParentable cannot be resolved. It is indirectly referenced from required .class files"错误,网上查了很久终于解决了. 问题根源:因为在复制项目的jar包时,把Eclipse下自带的android-supp

android.support.v4.app.Fragment 和 android.app.Fragment区别

今天在公司遇到一个android.app.Fragment 和android.support.v4.app.Fragment 的问题. (1)android.app.Fragment:兼容的最低版本是android:minSdkVersion="11"因此你的应用不能兼容3.0以下的应用. 可以使用<fragment>标签的,这点很重要,如果是用android.support.v4.app.Fragment的话,是不能是用<fragment>标签的,会抛出and

android fragment(android.support.v4.app.Fragment和android.app.Fragment

(1)android.app.Fragment:兼容的最低版本是android:minSdkVersion="11" 因此你的应用不能兼容3.0以下的应用. 可以使用<fragment>标签的,这点很重要,如果是用android.support.v4.app.Fragment的话,是不能是用<fragment>标签的,会抛出android.view.InflateException: Binary XML file line #7: Error inflatin

The type android.support.v4.app.TaskStackBuilder$SupportParentable cannot be resolved.

把家里的代码拷贝到公司的时候遇到“The type android.support.v4.app.TaskStackBuilder$SupportParentable cannot be resolved. It is indirectly referenced from required .class files”错误,网上查了很久终于解决了. 问题根源:因为在复制项目的jar包时,把Eclipse下自带的android-support-v4.jar包复制到了‘android-support-

80、Android Support v4、v7、v13的区别以及应用场景

一.简介 在 Android 开发中,为了使用高版本API的新特性,需要添加额外的包来使用这些新特性,这就是 Android Support 包 二.分类 Android Support v4: 这个包是为了照顾Android 1.6及以上版本而设计的,在开发中,默认都会使用到这个包 Android Support v7: 这个包是为了照顾Android 2.1及以上版本而设计的,但是不能兼容低版本 Android 系统,如果开发中不考虑 1.6 ,可以采用这个包.另外要注意的是,v7 包是依赖