Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';t让应用程序查找android.support.v7,won';找不到appcompat_v7项目_Android_Eclipse - Fatal编程技术网

Can';t让应用程序查找android.support.v7,won';找不到appcompat_v7项目

Can';t让应用程序查找android.support.v7,won';找不到appcompat_v7项目,android,eclipse,Android,Eclipse,我正试图在Eclipse(在Windows Vista上)中创建一个Android应用程序,但我无法让它找到我需要的Android.support.v7库内容。我认为我的设置是正确的,我在一台计算机上工作,但在另一台计算机上根本不工作,我需要帮助找出哪里出了问题 在Eclipse中,我按照以下步骤创建了一个新的“Android应用程序项目”,并选择API11作为最小SDK,并完成了所有其他步骤。(对于“在工作区中创建项目”,我取消选中它,并要求在网络驱动器上的某个位置创建文件,以防万一。)这创建

我正试图在Eclipse(在Windows Vista上)中创建一个Android应用程序,但我无法让它找到我需要的
Android.support.v7
库内容。我认为我的设置是正确的,我在一台计算机上工作,但在另一台计算机上根本不工作,我需要帮助找出哪里出了问题

在Eclipse中,我按照以下步骤创建了一个新的“Android应用程序项目”,并选择API11作为最小SDK,并完成了所有其他步骤。(对于“在工作区中创建项目”,我取消选中它,并要求在网络驱动器上的某个位置创建文件,以防万一。)这创建了另一个项目,
appcompat_v7
,我知道这就是现在的工作方式。我建造了那个项目。但是当我试图构建我的应用程序时,我无法通过导入android.support.v7的
错误解决

这是我关注的症状:我右键单击应用程序项目并选择Properties->Android。底部部分“Library”在左侧(参考)列中有“C:\users\me\workspace\appcompat\u v7”,在右侧(项目)列中有一个问号。[这是工作区目录,不是我保存文件的网络驱动器目录。]路径名旁边还有一个红色的X。我试着选择Add,它会显示一个列表,其中包括自动添加的
appcompat\u v7
项目。我选择了它,并用一个绿色的复选标记将它添加到列表中。然后我选择了另一个并将其删除。现在列表中只有一个appcompat_v7项目,带有一个绿色的复选标记,正确的名称在右边的列中,所以一切看起来都正常。我单击了OK(也尝试了Apply然后单击OK)。但是当我再次转到Properties->Android时,红色的X又回来了,项目名称又是
。因此,几秒钟前它能找到的东西似乎再也找不到了(?)。重新运行Eclipse没有任何帮助。
workspace\appcompat\u v7
目录及其内容似乎在
dir
命令中正常显示,尽管如果缺少什么,我不知道该查找什么

有关于尝试什么或检查什么的建议吗


编辑:通过实验,我发现了更多的信息。显然,取消选中“在工作区中创建项目”,然后选择一个网络驱动器,是导致问题的原因。如果我从一个干净的工作区开始,取消选中“在工作区中创建项目”并选择C:驱动器上的一个目录,那么一切都可以正常工作。如果我做了完全相同的事情,但选择了不同驱动器(如网络驱动器或USB闪存驱动器)上的目录,问题就会出现

将库添加到应用程序项目中:

  • 在项目资源管理器中,右键单击项目并选择属性
  • 在对话框左侧的类别面板中,选择Android
  • 在库窗格中,单击添加按钮
  • 选择库项目并单击确定。例如,appcompat项目应列为android-support-v7-appcompat
  • 在属性窗口中,单击确定
如果为
android-support-v7-appcompat
项目打开Java构建路径对话框,它应该与下图所示类似


经过更多的研究,我得出结论,这是一种症状,如果一个驱动器上有一个项目,另一个驱动器上有一个库,那么事情就会失败。在新机制中,ADT插件在设置新项目时自动创建
appcompat_v7
,这加剧了问题。如果工作区位于C:驱动器上,但您希望项目文件位于其他驱动器上,则通过取消选中“在工作区中创建项目”,插件会将项目文件放置在您的其他驱动器上,但会在C:驱动器上创建
appcompat_v7
,这会自动导致为#16472报告的问题

可能最好在放置项目文件的同一个驱动器上设置工作区(但我还没有测试过这一点;无论如何,对于非Android Java项目,将它们放在不同的驱动器上并不会给我带来问题)。但是,我找到了一种解决方法,将appcompat_v7
复制到另一个驱动器:

  • 使用Android应用程序项目向导创建一个新的应用程序,并让它在不同的驱动器上创建您的项目和一个新的
    appcompat_v7
    项目
  • 使用Windows资源管理器或其他方法,将新创建的
    appcompat_v7
    从C:复制到另一个驱动器上的某个位置
  • 在Eclipse中,删除appcompat_v7项目
  • 导入->安卓->现有安卓代码到工作区。浏览到您制作appcompat_v7副本的位置,选择它,然后执行导入。我发现它将新项目称为android-support-v7-appcompat,但这没有问题。我等待“构建工作区”完成(如果设置为不自动构建项目,则可能必须在新项目上使用构建项目)
  • 右键单击应用程序项目“属性”、“Android”。“Library”部分可能有一个路径名(C:drive上的
    appcompat_v7
    路径),旁边有一个红色的X。点击添加;应显示带有
    android-support-v7-appcompat
    的窗口;点击那个。应使用绿色复选标记将其添加到库列表中。现在选择C:驱动器上的路径名,单击移除,然后单击确定。我会再次点击“属性”进行双重检查,以确保库显示并且仍然有一个绿色的复选标记
  • 完成此操作后,如果您的工作区设置为自动生成,则