存档

文章标签 ‘SDK’

Android requires compiler compliance level 5.0 or 6.0. Found ‘1.7’ instead. Please use Android Tools > Fix Project Properties.

2013年4月15日 没有评论

最近在一个android 项目中,想对一个字符串变量做 switch 判断,居然提示说有语法错误,感觉太不可思议了。然后按照 Eclipse 的智能提示,自动做修复。但是在对话框中给出了错误信息,Android requires compiler compliance level 5.0 or 6.0. Found ‘1.7’ instead. Please use Android Tools > Fix Project Properties.

在网上搜索了一把,很多文章都写的是在项目上右键 ->android tools->Fix Project。如果不可以,检查Project->Properties->Java Compiler ,确认是 1.6 。

按照这个操作了后,无论修改成 1.6 还是 1.7还是不可以,很是气愤呀。后来无意见看到到了一个,说是需要确保android sdk中有Android1.6(API4)。果断去下载了,然后把 java compiler 改成 1.7 后,问题解决了。

这真是太奇怪了。

分类: 一句话 标签: ,

java.lang.ClassNotFoundException 错误

2012年5月5日 没有评论

这个事情其实持续了有好几个月了,发生在 Android SDK 更新后,Eclipse 项目可以编译成功,但是运行时会崩溃,无论是模拟器还是真机,跟踪输出的记录为  Caused by: java.lang.ClassNotFoundException 。崩溃的地点是第三方的库。

我有在项目里添加了一些统计、广告、语音相关的SDK,移除掉这些 jar 包后就正常,所以问题可能还是和这些有点关系。

奇怪的是,这项目以前是可以运行的,在反复卸载和安装 Eclipse 和 SDK 都没有效果后,我暂时把这事情给放下来,去琢磨 唠叨下 的代码。后来网上有人给出的解决方案是把项目里的 lib 文件夹修改名称为 libs ,就可以了。有问过其它专门做 java 开发的同事,无论是 lib 还是 libs 对项目来说都无所谓的。但是心里对一定要该名字总觉得是怪怪的。

心里还是有点不死心,继续在网上找线索,后来发现了另外的一个解决方法,看原文可以移步到这里。个人觉得第二种方案比较好,我们来看是怎么解决的哈。

在项目点右键,选择 Build Path ,再选择 Configure Build Path ,然后切换到  Libraries 选项卡,把第三方的 jar 引用全部移动到项目的顶部,然后 clean 一下项目,重新编译就可以通过了。

出错的项目是以前的项目,在 Android SDK 和 Eclipse 升级后出现,所以估计 Google 方面是不是做了一些修改导致项目前后不一样。对于文中提及的2个解决方法,各位看官可以根据自己的爱好和实际情况来选择好了。如果是在升级后新建的项目貌似就没有问题。

 

题外话:

在使用第三方 SDK 库的时候,我都是按照他们提供的文档,使用 Add External JARs 来添加。但是遇到了一个问题,项目通过版本控制在我的小Y和 Mac 上同步,绝对路径 Cover 不住 2 台电脑的项目设置,后来发现改用 Add JARs 可以解决,用的是项目的相对路径,这个真心不错。总感觉自己出东西真慢的样子,问题拖了这么久才解决。

分类: Android, 日常 标签: