今天我升级到Android SDK 2.3,我还升级了Eclipse Plugin Androi Developer Tools 8.0(从0.9.9开始)。我还将Java Development Kit升级到1.6_22。
现在在Eclipse中,我在所有Android项目中都遇到很多错误。
错误消息如下:
无法解析java.lang.Object类型。它是从所需的.class文件间接引用的。
如何解决此问题,以便我可以再次使用我的Android项目?
在这些项目的构建路径中,我没有对android.jar
的任何引用,而是一条消息:
无法获取项目的系统库
答案 0 :(得分:70)
对我来说,问题是在项目设置 - Android标签中,我没有选择Android版本。
答案 1 :(得分:41)
鉴于您提供的信息有限,这很难回答。以下是一些建议:
确保您的构建路径中有适当的android.jar
,因为这是java.lang.Object
的来源。
执行项目>清理,以确保您有1.6 .class
个文件,以防出现问题。
尝试从头开始创建一个新项目,看看是否有效。
答案 2 :(得分:27)
即使我选择了有效的目标,我也遇到了这个问题。我通过更改为不同的目标,应用更改然后更改来修复它。这似乎已经分类了。
答案 3 :(得分:21)
项目 - >属性 - > Android:选择其他Android目标(在我的情况下为Android 4.0.3) - >应用更改。 然后再次选择您的默认Android目标,就是这样。
希望得到这个帮助。
答案 4 :(得分:3)
这个问题是因为我的旧项目在没有安装旧Android SDK的新机器上造成的。
要修复,只需进入project.properties并观察旧版本号:
# Project target.
target=Google Inc.:Google APIs:3
只需更新版本号,如下所示:
# Project target.
target=Google Inc.:Google APIs:7
您会发现Eclipse随后会选择正确的SDK版本并开始工作。
答案 5 :(得分:3)
无需从头开始创建新项目。如果“修复项目属性”或“添加库> Android类路径容器”不起作用,项目文件夹的根目录中可能缺少“project.properties”文件。添加该文件并在Project属性中设置Android目标,重新添加Android库,再次修复项目属性,Android系统库现在应该包含在您的项目中。重建,你很高兴!
根据我的个人经验。对于自我记录,因为这经常发生在我身上:
Eclipse Helios SR2
Android SDK R.20
Android NDK R8b
OSX 10.7.4
答案 6 :(得分:2)
原来的问题有EXACT问题! 除了关闭我的项目/ Eclipse之外没有做任何事情,并且在重新打开时被所有错误吓到了。
在我的情况下,我只需要更改/切换工作区。 O_O 当我重新选择原来的工作区时,我发现一切都已解决并再次工作!
答案 7 :(得分:2)
在我的情况下,该问题与属性> android>库中缺少的库路径有关。
我清除并重新进入project.properties
文件
答案 8 :(得分:1)
java.lang.Object cannot be resolved in Eclipse
升级ADT后,这个问题最近开始出现在我身上。如上所述,当我取消选中+ Apply / check + Apply项目构建目标时,它会有所帮助,但问题最终会回来。所以我只是将android.jar明确添加到构建中。这是.classpath文件中的条目
<classpathentry kind="lib" path="/Applications/adt-bundle-mac-x86_64/sdk/platforms/android-19/android.jar"/>
这是一种解决方法,因为每次更改SDK版本时我都必须更改它,但至少在重新启动Eclipse时不需要使用属性来构建它。
答案 9 :(得分:1)
我也通过改变项目属性中的android选择来解决这个问题并解决它。我的错误是因为项目无法从android SDK中找到合适的lib。然后在右键单击项目时使用android修复工具修复项目,清理它然后更正。
答案 10 :(得分:1)
我遇到了这个问题。
对我有用的是右键单击项目,选择Android工具,添加支持库..
缺少android.jar,这将恢复它。
答案 11 :(得分:1)
tl; dr:还会检查“local.properties”文件中过时的SDK路径。
以下是我修复它的方法:我查看了Richard Le Mesurier给出的答案,并在Window&gt;中检查了Android SDK的路径。偏好&gt; CommonsWare提到的Android(因为我之前确实改变了SDK目录),但它仍然无法找到它。
然后我注意到我有一个名为“local.properties”的文件引用了“sdk.dir”的旧位置。我将其更改为新位置以匹配Window&gt;中的内容偏好&gt; Android系统。然后在Project&gt;中取消选择构建目标属性&gt; Android,点击Apply,重新选择它,点击OK并清理项目。那很有效!谢谢大家!
答案 12 :(得分:1)
另一个可能的解释是Eclipse已经忘记了它的Android插件。如果您切换工作区,就会发生这种情况,就像我的情况一样。我试图重新导入现有的Android项目,它找不到基本的java系统库,因为它指向标准的android jar。重新安装android插件(Help-&gt; Eclipse Marketplace,然后搜索“Android”并选择“Android Eclipse开发工具”)修复它。
答案 13 :(得分:1)
请参阅.classpath文件,看看是否添加了所有引用lib项目或src项目的路径和名称正确。
答案 14 :(得分:1)
我右键单击项目并关闭它。然后重新打开它。这解决了问题。
答案 15 :(得分:1)
就我而言,ADT需要更新(在Eclipse菜单帮助/检查更新,或帮助/安装新软件)。检查您的ADT!
答案 16 :(得分:1)
我尝试了这里提到的几个选项,但没有任何效果。然后我重新启动了我的Ubuntu机器并再次启动了Eclipse。然后一切都解决了。重新启动。
答案 17 :(得分:0)
就我而言,JRE失踪了(从Eclipse选项中消失)。
我所做的就是重新添加JRE Windows - &gt;偏好 - &gt; Java - &gt;已安装的JRE。
我的位于/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
答案 18 :(得分:0)
有同样的问题(我的java源文件中的红色错误) 解决方案很简单:
希望它适合你。
答案 19 :(得分:0)
帮助我的方式。
从工作项目中获取以下文件:
workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Working-project-name/.indexes
替换损坏的项目文件:
workspace/.metadata/.plugins/org.eclipse.core.resources/.projects/Broken-project-name/.indexes
答案 20 :(得分:0)
删除项目中的文件夹库
答案 21 :(得分:0)
我之前尝试过的最佳方法是创建一个新项目并选择:
从现有源创建项目并选择要导入的android项目的位置,接下来,您将看到android的构建目标,如:2.3.3或2.1 ..
选择其中一个然后完成!
你完成了! ..
答案 22 :(得分:0)
我的案例没有创建正确的AVD
创建AVD后,转到项目属性并找到Android,选择正确的SDK版本,然后转到JAVA Build Path,删除库(无法获取项目的系统库)并添加android库。
答案 23 :(得分:0)
在我的情况下,我的project.properties将android-8列为目标,我没有安装。
答案 24 :(得分:0)
尝试创建这样的新项目然后尝试
答案 25 :(得分:0)
尝试清理您的项目,这可能会有所帮助。
在eclipse上,单击上面名为“Project”的菜单项,然后单击“Clean Build”。 在该屏幕上,选中“清除下面选择的项目”复选框,选择给您带来问题的项目,然后单击“确定”。
它将重建你的项目,这通常有助于解决像这样的奇怪的日食错误。