ADT升级中出现的问题的解决方案 Android upgrade ADT 22,

Android开发环境升级到ADT 22之后,可能会出现两点小问题:

1. 新建Android项目时,R.java不能自动生成,解决方法:

打开Android SDK Manager重新检查更新,看到“Android SDK Build-tools”这一项选中并下载。下载完成后,重新建项目即可恢复正常。参照下图

ADT升级中出现的问题的解决方案(Android upgrade ADT 22, R.java files not generated,java.lang.ClassNotFoundException)


2.旧的项目重新运行时出现“java.lang.ClassNotFoundException”异常,解决方法:

在文件系统中找到项目下的.classpath文件,找到如下

 

  1. <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>  
  2. <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>  

 

改为

 

  1. <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>  
  2. <classpathentry kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>  

 

即可。如果有依赖的项目,请把依赖的所有项目也按以上方式修改。


经过如上步骤如果还不能正常运行,请检查项目中的Android Dependencies下是否有annotations.jar,如果有请修改项目根目录下project.properties文件中的target=最新Android版本,比如: target=android-17   然后刷新项目即可。

       注:如果项目根目录下没有project.properties文件,请从别的新的项目中复制project.properties和proguard-project.txt两个文件过来,并删除项目根目录下的default.properties和proguard.cfg两个文件,然后对project.properties做相应修改。


希望对你有所帮助!


参考:

1.http://stackoverflow.com/questions/16584015/java-eclipse-no-more-r-file-ever/16584243#16584243

2.http://blog.youkuaiyun.com/rwecho/article/details/8934507



今天打开刚打开Eclipse,提示我library库有更新。二话没说,直接打开Android SDK Manager,更新了一遍所有能更新的,同时把ADT也升级到了22版本。
升级过程比较顺利,编译之前的代码,也没有什么问题,但是接下来就出问题了。

我把编译出来的APK在设备上运行,一运行就出来java.lang.ClassNotFoundException的错误,明明那个class是存在的。之前也遇到过类似的问题,但那个是升级ADT17的时候外部jar包包含不对引起的,这个不是同一个问题啊,但是从现象上来看应该是一样的。

既然错误的信息一样,那就从引用的地方入手。后来果然发现.classpath文件发生了变化。

之前的.classpath文件:

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <classpath>  
  3.     <classpathentry kind="src" path="src"/>  
  4.     <classpathentry kind="src" path="gen"/>  
  5.     <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>  
  6.     <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>  
  7.     <classpathentry kind="output" path="bin/classes"/>  
  8. </classpath>  

升级后重新编译且运行出现错误的.classpath文件:

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <classpath>  
  3.     <classpathentry kind="src" path="src"/>  
  4.     <classpathentry kind="src" path="gen"/>  
  5.     <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>  
  6.     <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>  
  7.     <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>  
  8.     <classpathentry kind="output" path="bin/classes"/>  
  9. </classpath>  

后来我新建了一个工程,发现.classpath文件如下:

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <classpath>  
  3.     <classpathentry kind="src" path="src"/>  
  4.     <classpathentry kind="src" path="gen"/>  
  5.     <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>  
  6.     <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>  
  7.     <classpathentry kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>  
  8.     <classpathentry kind="output" path="bin/classes"/>  
  9. </classpath>  

区别就在于将

[html]  view plain copy
  1. <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>  
  2. <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>  
改成了

[html]  view plain copy
  1. <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>  
  2. <classpathentry kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>  

 

修改后再次运行,OK,没问题了!


那如果项目组开发,例如svn控制代码,难道要求所有的开发人员的ADT完全统一吗?下面说讲解决办法:

需要将.classpath修改一下才能提交svn,只保留这些类似的信息就可以了.如下

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>

其他信息,创建项目时,eclipse和ADT会自动补齐的,ADT22,ADT21,补的内容是不一样的。

同样,如果你要分享代码,.classpath也最好按照这个例子来改一下,否则别人还真的容易报错。

内容概要:本文详细介绍了一种基于Simulink的表贴式永磁同步电机(SPMSM)有限控制集模型预测电流控制(FCS-MPCC)仿真系统。通过构建PMSM数学模型、坐标变换、MPC控制器、SVPWM调制等模块,实现了对电机定子电流的高精度跟踪控制,具备快速动态响应和低稳态误差的特点。文中提供了完整的仿真建模步骤、关键参数设置、核心MATLAB函数代码及仿真结果分析,涵盖转速、电流、转矩和三相电流波形,验证了MPC控制策略在动态性能、稳态精度和抗负载扰动方面的优越性,并提出了参数自整定、加权代价函数、模型预测转矩控制和弱磁扩速等优化方向。; 适合人群:自动化、电气工程及其相关专业本科生、研究生,以及从事电机控制算法研究与仿真的工程技术人员;具备一定的电机原理、自动控制理论和Simulink仿真基础者更佳; 使用场景及目标:①用于永磁同步电机模型预测控制的教学演示、课程设计或毕业设计项目;②作为电机先进控制算法(如MPC、MPTC)的仿真验证平台;③支撑科研中对控制性能优化(如动态响应、抗干扰能力)的研究需求; 阅读建议:建议读者结合Simulink环境动手搭建模型,深入理解各模块间的信号流向与控制逻辑,重点掌握预测模型构建、代价函数设计与开关状态选择机制,并可通过修改电机参数或控制策略进行拓展实验,以增强实践与创新能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值