Android项目导入时可能遇到的问题

无论是新建一个“Android Project from Existing Code” 还是直接在包资源管理器中导入“Existing Android Code Into Workspace”,都可能因为原项目的环境与当前环境不一致导致无法直接运行。

可能遇到的报错分为几类:  

 1.如果在编译的时候出现

   Application requires API version 15. Device API version is 8   

解决方法:修改两个配置文件

1:在AndroidManifest.xml里,  <uses-sdk android:minSdkVersion="15" />找到這一行,這行是表示要執行這個應用程式所需要的最低版本,把數字改成模擬器上面的版本。

2:在project.properties

target=android-15

把target改为要运行模拟器的版本就OK了。

1,导入时提示“未能写入文件:D:workspacexxxx.classpath

点击确认后,项目是导入进来了,但是其中会有问题,导致无法正确运行。暂时忽略,解决见下面。

2,Unable to resolve target 'android-9'

这是项目中设定的Android模拟器的ID。打开project.properties文件,修改为本环境中正确的。(全新新建一个项目,对比看一下就知道)

3,/xxx/gen already exists but is not a source folder. Convert to a source folder or rename it.

简单的删除是不行的。原因是在项目中未将gen目录设置为资源目录。解决:

在项目上点右键-》属性,如下图进入,将gen目录勾选上

4,可以编译通过,但是在模拟器中异常中断退出。报错信息:“java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{*****}: java.lang.ClassNotFoundException: Didn't find class "*****" on path: /data/app/*******.apk”

原因:未将代码所在目录设置在项目的资源目录中。

解决:项目上点右键-》属性,按下图操作,勾选src目录(假定你的java代码是在src目录下)。这个与3很相似。

5,报错:“R cannot be resolved to a variable”

原因是没有正确生成出来编译文件。一般来讲,解决了上述2、3、4后,这个问题应该自动就解决了。如果仍然存在,则可能是编译的问题,尝试:A,项目点右键-》源码-》清理;B,菜单“项目”-》清理

偶然有一次,进行了上述所有操作,报错仍然存在。百思不得解,于是关闭了eclipse,重新打开,奇迹发生了,一切都OK了。怀疑是eclipse自身有BUG造成。

原文地址:https://www.cnblogs.com/cliuwei/p/5102498.html