在新工作区中构建android项目时出错

在新工作区中构建android项目时出错,android,eclipse,Android,Eclipse,我是android开发的新手。我正在使用eclipse创建android项目。我尝试在一个新创建的工作区中创建一个新的示例,该工作区使用目标SDK作为API 21并使用API 19编译。我已安装API 19和20的SDK及其所有更新。试图编译时,新创建的项目I出现以下错误。谁能帮我摆脱这个 Description Resource Path Location Type error: **Error retrieving parent for item: No resource

我是android开发的新手。我正在使用eclipse创建android项目。我尝试在一个新创建的工作区中创建一个新的示例,该工作区使用目标SDK作为API 21并使用API 19编译。我已安装API 19和20的SDK及其所有更新。试图编译时,新创建的项目I出现以下错误。谁能帮我摆脱这个

Description Resource    Path    Location    Type
error: **Error retrieving parent for item: No resource found that matches the given name** '@android:TextAppearance.Material.SearchResult.Subtitle'.    styles_base.xml /appcompat_v7/res/values-v21    line 168    Android AAPT Problem
Description Resource    Path    Location    Type
error: Error retrieving parent for item: No resource found that matches the given name '@android:TextAppearance.Material.SearchResult.Title'.   styles_base.xml /appcompat_v7/res/values-v21    line 164    Android AAPT Problem
Description Resource    Path    Location    Type
error: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Body1'. styles_base_text.xml    /appcompat_v7/res/values-v21    line 38 Android AAPT Problem
error: Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Body2'. styles_base_text.xml    /appcompat_v7/res/values-v21    line 36 Android AAPT Problem
等等。。。。。。。 我不知道出了什么问题。有谁能指导我成功构建项目吗?

请参阅:

删除app/src/main/res/上的values-v21文件夹,如果您没有使用android-L,这并不重要

以上是针对Android Studio的,对于Eclipse,它只是在ProjectRoot的res子文件夹中

此外,您还可以尝试使用SDK 21构建,如下所述:和


Eclipse中的新项目向导似乎生成了SDK 11的文件,包括appcompat-v7的文件,因此您要么需要使用API 21编译,要么从项目中删除这些文件。

我在尝试编译GCM客户端示例时遇到了相同或类似的错误

我通过在build.gradle中指定正确的版本解决了这个问题。更改:

dependencies {
    compile 'com.android.support:appcompat-v7:+'
}

我认为最好将依赖项的版本号设置为与
targetSdkVersion
相同

我花了一段时间才弄明白,讽刺的是Android Studio已经暗示了这一点:“避免在版本号中使用+;可能导致不可预测和不可重复的构建。”

更新


我刚刚意识到你说你“正在使用Eclipse”,我一点也不知道。我认为您应该寻找一种机制,在其中拉入appcompat依赖项,并告诉它使用特定版本而不是最新版本。希望其他人能告诉你它在哪里。

让你更新adt,以便取消adt并重新安装adtHi Mixaz,我尝试删除values-21文件夹。然而,我仍然面临相同的错误,因为themes_base.xml仍然抛出“找不到与给定名称匹配的资源”的错误。剩下的就是更新到Android 5。我已经尝试了所有其他的选择。有没有其他方法可以在不升级到Android 5的情况下解决这个问题?我需要在Android 4.4.2 API 19中编译该项目。看起来Eclipse新项目向导为API 21创建了一个项目。您可以尝试使用API 19重新创建一个新项目,只是为了再次检查您是否正确执行了所有操作。如果没有帮助,我会尝试将任何现有项目/示例导入Eclipse,并根据API 19构建它。Android SDK中有“示例”子文件夹。我看到android-19的示例适用于android Studio(gradle build),但android-17的示例似乎适用于android-17。尝试将它们导入Eclipse,它位于“文件”菜单的某个地方(我现在正在使用Android Studio),我尝试使用编译版本API 19打开一个新项目。但最终还是犯了同样的错误。我所做的就是安装了Android 5和构建工具21.0.1,错误被清除了。然而,我仍然有一个疑问。我可以在我创建的工作区中处理新项目,但是如果我尝试将现有项目导入到编译版本低于21的工作区中,我将无法运行它。我已经创建了一个新的工作区,并导入了旧的项目,它成功了。这个问题是因为我在工作区中使用21编译appcampat,还是eclipse的行为?
dependencies {
    compile 'com.android.support:appcompat-v7:19.0.0'
}