--------------------------------------------------------
注意依赖包或者集成的接口的包需要引入到libs目录下,不要引入本地包,否则找不到类。
------------------------------------------------------------
昨天为一个报错java.lang.NoClassDefFoundError的问题折腾了一天,公司里面好几位大牛帮忙,都没有搞定。后来有个同事建议我用空的Activity替换,通过逆向反推的方法找到原因了。
我要做的这个apk是在另外一个项目上已经发放的apk,移植到新平台上后,编译没有问题,在机器上验证运行时,Log打印出java.lang.NoClassDefFoundError报错,提示其中一个Activity找不到。
明明Activity就在工程中,而且AndroidManifest.xml文件中也有注册,为什么说找不到。反复google、baidu,试过很多网页上介绍的办法,还是没能解决。
后来有个同事说,既然这个Activity找不到,就换一个吧,于是我创建一个空的Activity,修改了调用的地方,编译、运行,竟然可以。于是大致猜测到是这个Activity本身存在问题。
但是这个Activity代码太多了,谁知道具体哪个位置出问题了。仔细看打印信息,其中有一行绿色的提示(在红色的报错之前)让我知道问题出在哪里了:这个Activity 继承的一个接口没有解析出来。
去掉原Activity 中与这个接口相关的代码后,再次编译、运行,问题没有复现了。事后有一个负责中间层的同事回复我,那个找不到的接口在新平台上不存在——原来如此!
通过这件事,我发现:
1.Eclipse下的Log窗口的打印信息,不光要看红色的报错,绿色的打印信息有时候也有用的;
2.出现java.lang.NoClassDefFoundError报错,不一定是代码本身的问题,也有可能是外部环境的改变导致Activity生成失败.
分享到:
相关推荐
该jar包解决报错java.lang.NoClassDefFoundError: org/apache/james/mime4j/MimeException,亲测可用。
在jsp运行过程中,报错 java.lang.NoClassDefFoundError org.apache.xml.serializer.TreeWalker时的处理方法。
今天测试突然给我说我写的XX界面一点app就crash了! 纳尼,我肯定表示不服啊!... W/System.err: java.lang.NoClassDefFoundError: android/os/PersistableBundle W/System.err: at java.lang.Class.getDeclar
运行Sqoop报错:Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/avro/LogicalType,下载此资源放到Sqoop的lib目录下即可
【kettle集成cdh6.1】外部数据源读写hdfs若干错前言环境报错问题分析解决办法后记 前言 最近试着上手了一下kettle,搭建过程很简单,就是下载个包解压一下,但是在配置数据源的过程中着实踩了不少坑,这里记录一下。...
Caused by: java.lang.NoClassDefFoundError: com.sun.org.apache.xml.internal.resolver.CatalogManager at com.sun.xml.ws.util.xml.XmlUtil.createEntityResolver(XmlUtil.java:266) at org.jvnet.jax_ws_...
该开发包是解决 JavaMail 发送邮件报错:java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream错误 ava.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream 使用方法: 将javaee.jar ...
NULL 博文链接:https://hnychenl.iteye.com/blog/675625
java.lang.NoClassDefFoundError: org/springframework/beans/factory/BeanNameAware 1 2 根据错误加入 spring-beans-4.x.x.RELEASE.jar 1 2 接着报错 java.lang.NoClassDefFoundError: org/springframework/...
webservice CXF 报错:java.lang.NoClassDefFoundError: org/apache/neethi/builders/AssertionBuilder 需要用到此jar文件 通过apache官网可获得。 文件位置\apache-cxf-2.7.13\lib
解决方法 首先把方法写出来,起因和经过和原理写在后面,时间仓促的直接看解决方法吧。 一般出现这个错都是使用的provided导致的 例如,我的旧配置如下: Project build.gradle文件: buildscript { ...
nested exception is java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool Caused by: java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool at java....
javax.xml.bind.jar和三个sqljdbc4x.jar;实测可用。用于sqlserver连接和出现Java 9 及以上 eclipse 链接 SQL数据库 抛出 java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter 异常
CXF restful的许多异常java.lang.NoClassDefFoundError: javax/ws/rs/MessageProcessingException.需要javax.ws.rs-api-2.0-m10.jar
如果出现JavaMail 发送邮件报错:java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream错误ava.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream 是因为myeclipse中有自带的Javamail...
springboot启动报错:java.lang.NoClassDefFoundError: org/springframework/transaction/ReactiveTransactionManager 不添加org.springframework.boot:spring-boot-starter-data-jpa:2.2.5.RELEASE,只有org....
1、如果报了如下错误: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logger 那是因为没有把log4j-1.2.13.jar倒入到工程中。 2、如果报了如下错误: org.smslib.GatewayException:...
Java.lang.NoClassDefFoundError 记录日志,通常和 log4j.jar共同使用 原因: 在 sun 开发 logger 前,apache 项目已经开发了功能强大的 log4j 日志工具,并向 sun 推荐将其纳入到 jdk 的一部分,可是 sun 拒绝...
恶心的问题,java.lang.NoClassDefFoundError: org/jaxen/JaxenException 分类: xml 问题 2011-12-29 13:28 0人阅读 评论(0) 收藏 编辑 删除 原来什么问题都没有,就是没有用那个jaxen.jar这个包 可以从...
1、json的核心包:json-lib-2.4-jdk15.jar;...3、上述依赖包版本不能再高了,任何一个再高一点的版本运行均会报错:java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException