- [commonjs--resolver] Missing “./jsx-runtime.js“ specifier in “react“ package
清羽_ls
前端&&沉淀javascriptreact.js前端
修复vite构建时错误vite打包,第三方包引用的react版本不一致问题修复(不是最优解)//vite.config.jsimport{defineConfig}from'vite';importreactfrom'@vitejs/plugin-react';importpathfrom'path';exportdefaultdefineConfig({plugins:[react(),//如果
- IDEA显示Cannot resolve symbol XXX
醉书生ꦿ℘゜এ
javaJavaScriptjsintellijidea
解决方法:File-->InvalidateCaches/Restart-->InvalidateandRestart
- 05. spring-boot对spring-mvc的自动配置
马晓钧
spring-mvc的自动配置viewResolver:视图解析器:根据方法的返回值得到视图对象(View)。//会将容器中已有的ViewResolver和自己定义的ViewResolver全部add进去ContentNegotiatingViewResolver自定义视图解析器://需要实现ViewResolver,并注入进容器@ConfigurationpublicclassViewConfi
- QT运行错误码:DirectShowPlayerService::doSetUrlSource: Unresolved error code 0x800c000d ()
老男孩之百凉上该
qt5
出现这个错误码:就是url绝对地址出错了,解决办法就是去检查自己播放视频的路径!运行错误:运行正确:虽然我看不出什么问题,但是解决了,
- 联级选择联级选择
dongsdh
vue.jselementuijavascript
areaList:[],props:{lazy:true,label:"shortName",value:"id",lazyLoad(node,resolve){letnodes=[];if(node.level==1){getListCityList(node.value).then((res)=>{nodes=res.dataresolve(nodes);})}elseif(node.leve
- 安卓性能优化面试题 1-5
️ 邪神
Android面试题java开发语言面试安卓
1.如何对Android应用进行性能分析?1:Android应用开发中出现卡顿现象,通常是由以下原因造成的:UI线程被阻塞:UI线程是负责渲染和更新UI的线程,如果UI线程被阻塞,就会导致界面卡顿。常见的阻塞UI线程的原因有耗时操作(如IO操作、网络请求等)、过度绘制等。垃圾回收频繁:垃圾回收会占用一定的时间,如果频繁进行垃圾回收,就会影响应用的响应速度。常见的引起垃圾回收频繁的原因有过度创建对象
- appium自动化测试完整项目
自动化测试薰儿
软件测试技术分享appium
前言Appium是一个开源的自动化测试框架,支持跨平台,支持多种编程语言,可用于原生,混合和移动web应用程序,使用webdriver驱动ios,android应用程序、那么为了学习app自动化测试首要任务肯定就是搭建测试开发环境,因此在这里记一次搭建Appium自动化测试环境的完整过程,文章较长,需要花费一定的时间,请耐心阅读,如果文中有什么错误请指正安装JavaJDKJDK环境可以看我之前安装
- Android11 FallbackHome启动和关闭流程分析
Kbattery
Android系统开机启动流程androidzygote
Android7.0引入了新特性:DirectBootMode,设备启动后进入的一个新模式,直到用户解锁(unlock)设备此阶段结束。在这个模式下,系统调用resolveHomeActivity找到的是FallbackHome,而不是我们的桌面应用。所以系统开始启动的是FallbackHome这个"桌面"。03-1316:58:41.359431431Dtest10:===getDefaultT
- 【Android】AOSP 架构
吴同学是个程序员
Androidandroidaosp安卓安卓架构
Android官网对AOSP结构图进行了更新,如下所示:Android应用(AndroidApps)完全使用AndroidAPI开发的应用。在某些情况下,设备制造商可能希望预安装Android应用以支持设备的核心功能。特权应用(PrivilegedApps)使用Android和系统API组合创建的应用。这些应用必须作为特权应用预安装在设备上。设备制造商应用(DeviceManufacturerAp
- VPN 在Android中的通信三 (netty DNS 域名自解析)
尚思app
android
在使用场景中会遇到需要nettysocket的域名解析到指定IP地址,怎么做到呢,在我们的netty中,提供了DNS域名解析(DefaultNameResolver)。一、自定义类MyDefaultNameResolver继承DefaultNameResolver,实现doResolve方法,解析的相关逻辑在这里面处理publicclassMyDefaultNameResolverextendsD
- Android 子线程为什么不能更新UI?
原来是图哥
android线程handler
Android应用的UI是在主线程上进行绘制和更新的。当我们在子线程中直接进行UI更新时,会导致以下问题:1.线程安全问题:多个线程同时操作UI,可能导致UI组件的状态不一致或者出现竞争条件。2.卡顿和ANR:如果在主线程中执行耗时操作,会导致主线程被阻塞,用户界面无法响应用户的输入,甚至可能发生ANR(ApplicationNotResponding)错误。移步:子线程怎么切换主线程?(一)现象
- sleep(1000)函数+parseInt
wyzqhhhh
前端javascript开发语言
sleep//意味着等待1000毫秒可以从promiseasyncawait角度实现functionsleep(ms){returnnewPromise(resolve=>{setTimeout(resolve,ms)})}asyncfunctionexample(){console.log("!");awaitsleep(1000);console.log("222")}example();在这
- Android L (5.0及以上版本) 中如何精准判断当前页面是否位于栈顶
Evaporator Core
android
在Android应用程序开发中,了解应用内Activity的状态对于优化用户体验、执行适时的操作至关重要。特别是在多任务环境下,准确判断当前Activity是否位于任务栈顶端,即用户当前正在交互的页面,有助于防止无效操作和资源浪费。尤其是在AndroidLollipop(5.0)及其之后版本中,Google引入了更为严格的权限管理和新的API来获取应用状态,使得这一判断变得更加精细而复杂。引子An
- SpringMVC11、文件上传和下载
林知屿
框架篇springspringboot数据库后端javamvc
11、文件上传和下载11.1、准备工作文件上传是项目开发中最常见的功能之一,springMVC可以很好的支持文件上传,但是SpringMVC上下文中默认没有装配MultipartResolver,因此默认情况下其不能处理文件上传工作。如果想使用Spring的文件上传功能,则需要在上下文中配置MultipartResolver。前端表单要求:为了能上传文件,必须将表单的method设置为POST,并
- webpack 打包后,图片加载错误
佩淇呢
webpackVue2webpack前端node.jsjavascriptvue
使用webpack打包后,图片没有加载出来,页面空白,报错图片引用的路径不对解决办法:1.找到config->index.js将assetsPublicPath:'/',改为assetsPublicPath:'./'build:{index:path.resolve(__dirname,'../dist/index.html'),assetsRoot:path.resolve(__dirname,
- Spark从入门到精通29:Spark SQL:工作原理剖析以及性能优化
勇于自信
SparkSQL工作原理剖析1.编写SQL语句只要是在数据库类型的技术里面,例如MySQL、Oracle等,包括现在大数据领域的数据仓库,例如Hive。它的基本的SQL执行的模型,都是类似的,首先都是要生成一条SQL语句执行计划。执行计划即从哪里查询,在哪个文件,从文件中查询哪些数据,此外,复杂的SQL还包括查询时是否对表中的数据进行过滤和筛选等等。2.UnresolvedLogicalPlan未
- Unresolved dependency: ‘com.aspose:aspose:jar:19‘最直接解决方法
我是时生
javajava
Unresolveddependency:'com.aspose:aspose:jar:19’最直接解决方法产生该问题的原因是在maven中配置的http://maven.aliyun.com/nexus/content/groups/public下载不了com.aspose:aspose的jar包最快的方法是直接下载jar包到maven仓库中,我提供安装包。
- vue如何解析后台传回的文件流
我还能再卷一点
vue.js前端javascript
一、配置axios的响应类型请求拦截器中增加代码,判断如何调用的接口是文件下载接口将响应类型设置成blobconfig.responseType='blob'二、将获取回来的文件流转换成base64blobToBase64(blob){returnnewPromise((resolve,reject)=>constfileReader=newFileReader();fileReader.onlo
- oracle 数据库连接错误:ORA-12154,ORA-12523
_*大米*_
oracle数据库连接
起由:在本机启动两个数据库,orcl和HIS,在服务端连接没有问题。采用客户端模式连接时,在PL/SQL连接数据库时,经常会报以下两个错误。ORA-12154:TNS:couldnotresolvetheconnectidentifierspecifiedORA-12523:TNS:listenercouldnotfindinstanceappropriatefortheclientconnect
- Nginx常用配置--正向代理服务器
ststcheung
nginx运维
server{resolver8.8.8.8;listen80;location/{proxy_passhttp://$http_host$request_uri;}}在客户端配置http_proxy环境变量,exporthttp_proxy=http://你的正向代理服务器地址:代理端口,即可使用代理服务器上网。
- js 延迟执行sleep函数
学不会•
javascript前端vue.js
按钮exportdefault{data(){return{form:{}}},methods:{//延时执行sleep(delay){returnnewPromise((resolve,reject)=>{setTimeout(()=>{resolve()},delay)})},asyncbtn(){console.log("runtime")console.log(1)awaitthis.sl
- SpringMVC的文件上传与下载
lvpflv
SpringMVCjavaspring
SpringMVC文件上传:使用:org.springframework.web.multipart.commons.CommonsMultipartResolver使用:headPhoto.transferTo(file);2、文件存储位置问题StringrealPath=request.getServletContext().getRealPath("/upload")Stringdir=ne
- 支持国密ssl的curl编译和测试验证(下)
码农心语
LINUXc++开发ssl网络协议网络铜锁nlts
上接支持国密ssl的curl编译和测试验证(上)4.4验证国密http2协议功能命令:/opt/gmcurl/bin/curl--http2--tlcp"https://www.test.com:9443/"-kv输出:*Hostwww.test.com:9441wasresolved.*IPv6:(none)*IPv4:127.0.0.1*Trying127.0.0.1:9441...*Conn
- springboot 异常 - Failed to convert value of type
@红@旗下的小兵
springboot
Resolved[org.springframework.web.method.annotation.MethodArgumentTypeMismatchException:Failedtoconvertvalueoftype'java.lang.String'torequiredtype'java.lang.Integer';nestedexceptionisjava.lang.NumberFo
- Android组件化BUG
哈龙_99
android学习笔记android
BUG描述:AndroidStudio4.1创建applicationmodule和多个libraurymodule,并且在applicationmodule引入libraurymoduleindependency时出现:Executionfailedfortask':app:mergeDexDebug'.>Couldnotresolveallfilesforconfiguration':app:
- Promise
meng_281e
基础用法letpromise=newPromise(function(resolve,reject){if(){resolve();}else{reject();}});promise.then(function(res){console.log('resolved.');}).catch(function(error){//处理getJSON和前一个回调函数运行时发生的错误console.log
- Eclipse Spring Boot搭建中的问题
langzitianya
JAVA
1.Thetypejavax.servlet.ServletContextcannotberesolved原因默认生成的pom.xmlorg.springframework.bootspring-boot-starter-tomcatprovided下面这个属性,表示使用本机已经存在的东西,不会下载对应的东西。provided解决:eclipse里添加本机的tomcatserver,然后在项目的J
- vue3实现瀑布流布局组件
guizi0809
vue3vue.js前端javascript
先看效果图直接上代码utils.js//用于模拟接口请求exportconstgetRemoteData=(data='获取数据',time=2000)=>{returnnewPromise((resolve)=>{setTimeout(()=>{console.log(`模拟获取接口数据`,data)resolve(data)},time)})}//获取数组随机项exportconstgetRa
- 路由的导航守卫
cssl-虞老师
VUE入门vue.js前端javascript
1.什么是导航守卫vue-router提供的导航守卫主要用来通过跳转或取消的方式守卫导航。通俗点讲就是一个拦截器。2.导航守卫分类全局守卫beforeEach(全局前置)、beforeResolve(全局解析)、afterEach(全局后置)(在路由实例对象注册使用,写在main.js中)代码举例(结合sessionStorage实现登录拦截):router.beforeEach((to,from
- 【Go-Zero】goctl生成model层后报错Unresolved reference ‘ErrNotFound‘解决方案
寸_铁
gogolang后端goctlgo-zeromodel代码生成配置
【Go-Zero】goctl生成model层后报错Unresolvedreference'ErrNotFound’解决方案大家好我是寸铁总结了一篇goctl生成model层后报错Unresolvedreference'ErrNotFound’报错解决方案的文章✨喜欢的小伙伴可以点点关注问题背景大家好,我是寸铁!今天在使用goctl一键转换生成model层代码时,出现了个小bug。下面我们一起来看一
- [星球大战]阿纳金的背叛
comsci
本来杰迪圣殿的长老是不同意让阿纳金接受训练的.........
但是由于政治原因,长老会妥协了...这给邪恶的力量带来了机会
所以......现代的地球联邦接受了这个教训...绝对不让某些年轻人进入学院
- 看懂它,你就可以任性的玩耍了!
aijuans
JavaScript
javascript作为前端开发的标配技能,如果不掌握好它的三大特点:1.原型 2.作用域 3. 闭包 ,又怎么可以说你学好了这门语言呢?如果标配的技能都没有撑握好,怎么可以任性的玩耍呢?怎么验证自己学好了以上三个基本点呢,我找到一段不错的代码,稍加改动,如果能够读懂它,那么你就可以任性了。
function jClass(b
- Java常用工具包 Jodd
Kai_Ge
javajodd
Jodd 是一个开源的 Java 工具集, 包含一些实用的工具类和小型框架。简单,却很强大! 写道 Jodd = Tools + IoC + MVC + DB + AOP + TX + JSON + HTML < 1.5 Mb
Jodd 被分成众多模块,按需选择,其中
工具类模块有:
jodd-core &nb
- SpringMvc下载
120153216
springMVC
@RequestMapping(value = WebUrlConstant.DOWNLOAD)
public void download(HttpServletRequest request,HttpServletResponse response,String fileName) {
OutputStream os = null;
InputStream is = null;
- Python 标准异常总结
2002wmj
python
Python标准异常总结
AssertionError 断言语句(assert)失败 AttributeError 尝试访问未知的对象属性 EOFError 用户输入文件末尾标志EOF(Ctrl+d) FloatingPointError 浮点计算错误 GeneratorExit generator.close()方法被调用的时候 ImportError 导入模块失
- SQL函数返回临时表结构的数据用于查询
357029540
SQL Server
这两天在做一个查询的SQL,这个SQL的一个条件是通过游标实现另外两张表查询出一个多条数据,这些数据都是INT类型,然后用IN条件进行查询,并且查询这两张表需要通过外部传入参数才能查询出所需数据,于是想到了用SQL函数返回值,并且也这样做了,由于是返回多条数据,所以把查询出来的INT类型值都拼接为了字符串,这时就遇到问题了,在查询SQL中因为条件是INT值,SQL函数的CAST和CONVERST都
- java 时间格式化 | 比较大小| 时区 个人笔记
7454103
javaeclipsetomcatcMyEclipse
个人总结! 不当之处多多包含!
引用 1.0 如何设置 tomcat 的时区:
位置:(catalina.bat---JAVA_OPTS 下面加上)
set JAVA_OPT
- 时间获取Clander的用法
adminjun
Clander时间
/**
* 得到几天前的时间
* @param d
* @param day
* @return
*/
public static Date getDateBefore(Date d,int day){
Calend
- JVM初探与设置
aijuans
java
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台
- SQL中ON和WHERE的区别
avords
SQL中ON和WHERE的区别
数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 www.2cto.com 在使用left jion时,on和where条件的区别如下: 1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。
- 说说自信
houxinyou
工作生活
自信的来源分为两种,一种是源于实力,一种源于头脑.实力是一个综合的评定,有自身的能力,能利用的资源等.比如我想去月亮上,要身体素质过硬,还要有飞船等等一系列的东西.这些都属于实力的一部分.而头脑不同,只要你头脑够简单就可以了!同样要上月亮上,你想,我一跳,1米,我多跳几下,跳个几年,应该就到了!什么?你说我会往下掉?你笨呀你!找个东西踩一下不就行了吗?
无论工作还
- WEBLOGIC事务超时设置
bijian1013
weblogicjta事务超时
系统中统计数据,由于调用统计过程,执行时间超过了weblogic设置的时间,提示如下错误:
统计数据出错!
原因:The transaction is no longer active - status: 'Rolling Back. [Reason=weblogic.transaction.internal
- 两年已过去,再看该如何快速融入新团队
bingyingao
java互联网融入架构新团队
偶得的空闲,翻到了两年前的帖子
该如何快速融入一个新团队,有所感触,就记下来,为下一个两年后的今天做参考。
时隔两年半之后的今天,再来看当初的这个博客,别有一番滋味。而我已经于今年三月份离开了当初所在的团队,加入另外的一个项目组,2011年的这篇博客之后的时光,我很好的融入了那个团队,而直到现在和同事们关系都特别好。大家在短短一年半的时间离一起经历了一
- 【Spark七十七】Spark分析Nginx和Apache的access.log
bit1129
apache
Spark分析Nginx和Apache的access.log,第一个问题是要对Nginx和Apache的access.log文件进行按行解析,按行解析就的方法是正则表达式:
Nginx的access.log解析正则表达式
val PATTERN = """([^ ]*) ([^ ]*) ([^ ]*) (\\[.*\\]) (\&q
- Erlang patch
bookjovi
erlang
Totally five patchs committed to erlang otp, just small patchs.
IMO, erlang really is a interesting programming language, I really like its concurrency feature.
but the functional programming style
- log4j日志路径中加入日期
bro_feng
javalog4j
要用log4j使用记录日志,日志路径有每日的日期,文件大小5M新增文件。
实现方式
log4j:
<appender name="serviceLog"
class="org.apache.log4j.RollingFileAppender">
<param name="Encoding" v
- 读《研磨设计模式》-代码笔记-桥接模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/**
* 个人觉得关于桥接模式的例子,蜡笔和毛笔这个例子是最贴切的:http://www.cnblogs.com/zhenyulu/articles/67016.html
* 笔和颜色是可分离的,蜡笔把两者耦合在一起了:一支蜡笔只有一种
- windows7下SVN和Eclipse插件安装
chenyu19891124
eclipse插件
今天花了一天时间弄SVN和Eclipse插件的安装,今天弄好了。svn插件和Eclipse整合有两种方式,一种是直接下载插件包,二种是通过Eclipse在线更新。由于之前Eclipse版本和svn插件版本有差别,始终是没装上。最后在网上找到了适合的版本。所用的环境系统:windows7JDK:1.7svn插件包版本:1.8.16Eclipse:3.7.2工具下载地址:Eclipse下在地址:htt
- [转帖]工作流引擎设计思路
comsci
设计模式工作应用服务器workflow企业应用
作为国内的同行,我非常希望在流程设计方面和大家交流,刚发现篇好文(那么好的文章,现在才发现,可惜),关于流程设计的一些原理,个人觉得本文站得高,看得远,比俺的文章有深度,转载如下
=================================================================================
自开博以来不断有朋友来探讨工作流引擎该如何
- Linux 查看内存,CPU及硬盘大小的方法
daizj
linuxcpu内存硬盘大小
一、查看CPU信息的命令
[root@R4 ~]# cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep "physical id"
model name : Intel(R) Xeon(R) CPU X5450 @ 3.00GHz
model name :
- linux 踢出在线用户
dongwei_6688
linux
两个步骤:
1.用w命令找到要踢出的用户,比如下面:
[root@localhost ~]# w
18:16:55 up 39 days, 8:27, 3 users, load average: 0.03, 0.03, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
- 放手吧,就像不曾拥有过一样
dcj3sjt126com
内容提要:
静悠悠编著的《放手吧就像不曾拥有过一样》集结“全球华语世界最舒缓心灵”的精华故事,触碰生命最深层次的感动,献给全世界亿万读者。《放手吧就像不曾拥有过一样》的作者衷心地祝愿每一位读者都给自己一个重新出发的理由,将那些令你痛苦的、扛起的、背负的,一并都放下吧!把憔悴的面容换做一种清淡的微笑,把沉重的步伐调节成春天五线谱上的音符,让自己踏着轻快的节奏,在人生的海面上悠然漂荡,享受宁静与
- php二进制安全的含义
dcj3sjt126com
PHP
PHP里,有string的概念。
string里,每个字符的大小为byte(与PHP相比,Java的每个字符为Character,是UTF8字符,C语言的每个字符可以在编译时选择)。
byte里,有ASCII代码的字符,例如ABC,123,abc,也有一些特殊字符,例如回车,退格之类的。
特殊字符很多是不能显示的。或者说,他们的显示方式没有标准,例如编码65到哪儿都是字母A,编码97到哪儿都是字符
- Linux下禁用T440s,X240的一体化触摸板(touchpad)
gashero
linuxThinkPad触摸板
自打1月买了Thinkpad T440s就一直很火大,其中最让人恼火的莫过于触摸板。
Thinkpad的经典就包括用了小红点(TrackPoint)。但是小红点只能定位,还是需要鼠标的左右键的。但是自打T440s等开始启用了一体化触摸板,不再有实体的按键了。问题是要是好用也行。
实际使用中,触摸板一堆问题,比如定位有抖动,以及按键时会有飘逸。这就导致了单击经常就
- graph_dfs
hcx2013
Graph
package edu.xidian.graph;
class MyStack {
private final int SIZE = 20;
private int[] st;
private int top;
public MyStack() {
st = new int[SIZE];
top = -1;
}
public void push(i
- Spring4.1新特性——Spring核心部分及其他
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- 配置HiveServer2的安全策略之自定义用户名密码验证
liyonghui160com
具体从网上看
http://doc.mapr.com/display/MapR/Using+HiveServer2#UsingHiveServer2-ConfiguringCustomAuthentication
LDAP Authentication using OpenLDAP
Setting
- 一位30多的程序员生涯经验总结
pda158
编程工作生活咨询
1.客户在接触到产品之后,才会真正明白自己的需求。
这是我在我的第一份工作上面学来的。只有当我们给客户展示产品的时候,他们才会意识到哪些是必须的。给出一个功能性原型设计远远比一张长长的文字表格要好。 2.只要有充足的时间,所有安全防御系统都将失败。
安全防御现如今是全世界都在关注的大课题、大挑战。我们必须时时刻刻积极完善它,因为黑客只要有一次成功,就可以彻底打败你。 3.
- 分布式web服务架构的演变
自由的奴隶
linuxWeb应用服务器互联网
最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们只关注架构的演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了,这个时候由于网站具备了一定的特色,吸引了部分人访问,逐渐你发现系统的压力越来越高,响应速度越来越慢,而这个时候比较明显的是数据库和应用互相影响,应用出问题了,数据库也很容易出现问题,而数据库出问题的时候,应用也容易
- 初探Druid连接池之二——慢SQL日志记录
xingsan_zhang
日志连接池druid慢SQL
由于工作原因,这里先不说连接数据库部分的配置,后面会补上,直接进入慢SQL日志记录。
1.applicationContext.xml中增加如下配置:
<bean abstract="true" id="mysql_database" class="com.alibaba.druid.pool.DruidDataSourc
在运行android-styled-dialogs库和demo的时候,发现一运行就死掉log如下:
I/ActivityManager( 378): Start proc eu.inmite.demo.dialogs for activity eu.inmite.demo.dialogs/.MyActivity: pid=1500 uid=10054 gids={50054}
W/dalvikvm( 1500): Unable to resolve superclass of Leu/inmite/demo/dialogs/MyActivity; (19)
......
E/AndroidRuntime( 1500): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{eu.inmite.demo.dialogs/eu.inmite.demo.dialogs.MyActivity}: java.lang.ClassNotFoundException: Didn't find class "eu.inmite.demo.dialogs.MyActivity" on path: DexPathList[[zip file "/data/app/eu.inmite.demo.dialogs-2.apk"],nativeLibraryDirectories=[/data/app-lib/eu.inmite.demo.dialogs-2, /system/lib]]
根据经验,一直以为是RuntimeException的提示信息非常重要,但是如果你分析的话就会发现,除了一些结论以外,没有任何干货。没说明白为什么找不到。然后又到代码中找,包名,路径都没有错,那问题究竟出现在哪里呢?
偶然间发现了上述的红色log,无法解析MyActivity的父类,看了这个恍然大悟,MyActivity的父类是FragmentAcitivity啊,在support.v4.jar包中,难道是没有引入?检查了一下,并尝试编译的时候,勾选编译输出到apk中,但是不起作用。
到网上搜吧:果然有许多人遇到相同的问题:
主要原因如下:
https://github.com/JakeWharton/ActionBarSherlock/issues/857
Because the SDK 22 is now more smart about library dependency :)
With the side effect that now when you compile external library of your libraries are no more automatically embed in the final APK.
You just need to copy your libraries external JARs to your main application libs :)
http://www.cnblogs.com/vaiyanzi/archive/2012/08/09/2629950.html
文章说得更加清楚一些:
综合一下,如果引用额外的jar包,需要将包放到libs目录下,然后引用libs目录下的jar包。一般就能解决问题,我这样做了,问题解决了。