导入android.support无法解决

128
我正在尝试运行提供的代码这里。 我从他们的Github下载了代码并将其导入到Android SDK中,但是在下面的几行代码处出现错误。
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.NavUtils;  

在多个文件中使用Android Support LibraryAndroid Support Repository,但是如果我检查Android SDK Manager,发现Extras文件夹中这两个库都已经安装。我还可以在SDK_INSTALL\sdk\extras\android\support目录下看到支持文件夹及其内容。其中包括v4文件夹,它也包含了android-support-v4.jarsrc文件夹。那么为什么还会出现错误?如何解决这个问题,并使示例代码正常运行?该示例代码是一个RSS阅读器应用程序,如果相关的话。


如果您正在使用ADT 22,则可能未选择"外部库",请转到项目属性并在构建路径中检查此选项。 - Shrikant Ballal
我找不到这个选项。它在Builders还是java Build path中? - user13267
项目 > 属性 > Java 构建路径 > 顺序和导出 > 勾选 "Android 私有库" - Shrikant Ballal
5
这个问题加上集成开发环境(IDE)的名称会更有帮助。 - ataulm
IDE是从Android开发者网站下载的Android SDK。虽然我不确定它是哪个版本,但很可能是在发布这个问题时的最新版本。 - user13267
https://stackoverflow.com/questions/26977608/appcompat-v7-errors-in-eclipse/27626241#27626241 - user4389558
9个回答

286

按照以下步骤操作:

对于Eclipse:

  • 进入您项目的属性
  • 导航到Java Build Path
  • 然后转到Libraries选项卡。 在右侧窗格中单击Add External JARs按钮。
  • 选择android-support-v4.jar文件,通常Jar文件的路径是:
    YOUR_DRIVE\android-sdks\extras\android\support\v4\android-support-v4.jar
  • 在添加了android-support-v4.jar库之后,导航到Order and Export选项卡,并在android-support-v4库文件上打勾。
  • 完成上述步骤后,请Clean该项目并将其Build
  • 问题解决了。

对于Android Studio:

简短版:

  • 向您的build.gradle文件中添加以下行:
    implementation 'com.android.support:support-v4:YOUR_TARGET_VERSION'

详细版:

  • 进入文件 -> 项目结构

  • 转到"依赖项"选项卡 -> 单击加号 -> 转到"库依赖项"

  • 选择支持库 "support-v4 (com.android.support:support-v4:YOUR_TARGET_VERSION)"

  • 导航到您的App目录内的"build.gradle",并仔细检查您所需的Android Support Library是否已添加到依赖项中。

  • 重新构建您的项目,现在一切都应该正常工作。

这个问题的进一步阅读:

  1. 支持库 - Android Dev
  2. 最近的支持库修订
  3. Support Library Packages
  4. 什么是Android支持库?
  5. Android支持库如何工作?

2
谢谢 :) 在将所有文件复制到新笔记本电脑后,在不同路径上安装Android时遇到了这个错误。 - Muz
1
谢谢!你确实解决了我的问题,但是对我来说还是有点奇怪 - 我的项目一直很好地使用v4支持库,只是在添加了一个也使用支持库的外部项目之后才出现了这个问题。为什么会这样呢?为什么在添加外部项目之前我不需要添加v4支持库呢? - user2278484
谢谢,就是这样!为什么安卓系统在我们请求导入时不能包含这个文件呢?我浪费了一个小时来解决这个问题。 - Ted Betz
2
我看到如果你在项目上右键单击,选择android工具,会有一个新选项:“安装支持库”。这个配置是否自动完成呢? - Brad Hein
3
在 Android Studio 中,依次点击:文件 -> 项目结构 -> 依赖项选项卡 -> 点击“+”添加库依赖项 -> 从列表中选择 support-v4 -> 点击“确定”。 - evya
显示剩余6条评论

15

andorid-support-v4.jar是一个外部的jar文件,您需要将其导入到您的项目中。

以下是在Android Studio中的操作方法:

进入 "File -> Project Structure" enter image description here

进入 "Dependencies" 标签 -> 点击加号 -> 进入 "Library dependency" enter image description here

选择支持库 "support-v4 (com.android.support:support-v4:23.0.1)" enter image description here

现在,打开您应用程序的 "build.gradle" 文件并确保已将android support库添加到依赖项中。或者,您也可以直接在 dependencies{} 中键入 compile 'com.android.support:support-v4:23.0.1' ,而不是通过GUI进行操作。

enter image description here

重新构建您的项目,现在应该一切正常。 enter image description here


8

另一种解决方法:

如果您正在使用支持库,您需要将appcompat库添加到项目中。 此链接 显示如何将支持库添加到您的项目中。

假设您之前已经添加了支持库,但仍然遇到上述问题,您可以按照以下步骤进行修复。

  1. 右键单击项目,导航到构建路径 > 配置构建路径

  2. 在窗口左侧选择Android。 您将看到如下内容:

enter image description here

  1. 您会注意到当前没有引用任何库。 现在点击右下角的添加按钮。 您将看到如下弹出窗口。

enter image description here

  1. 选择appcompat库并按确定。(注意:如果您已按照前面提到的方式添加了库,则会显示该库)。现在您将看到以下窗口:

enter image description here

  1. 确定。 就这样,库现在已添加到您的项目中(请注意红色标记),与支持库相关的错误必须消失了。

@downvoter.. 如果您能简要说明下投票反对的原因,我将不胜感激。这将有助于我在未来更好地帮助他人并改进我的回答。我分享了我所经历的,以帮助未来的读者,而且回答与问题非常相关。 - Dexter

4
当我手动将代码转移到另一台笔记本电脑时,出现了这个问题。只需执行以下操作即可解决:

文件>无效缓存/重启

点击“使缓存失效并重启”,问题就解决了。

3

我按照Gene在Android Studio 1.5.1中的说明操作,但它将以下代码添加到了我的build.gradle文件中:

compile 'platforms:android:android-support-v4:23.1.1'

所以我将其更改为:

compile 'com.android.support:support-v4:23.1.1'

然后它开始工作了。


2

如果您的项目使用包含不同版本支持库的其他库项目,则可能出现此问题。解决此问题的方法是在每个位置保留相同版本的支持库。

这也可能发生如果您有多个相同的支持库android-support-v4.jar版本。要解决此问题,请在每个位置保留相同版本的支持库。


1

这是将任何第三方库或jar文件导入您的项目的非常简单的步骤

  1. your_drive\android-sdks\extras\android\support\v4\android-support-v4.jar复制android-support-v4.jar文件
    或者从现有项目的bin文件夹中复制。
    或者任何第三方.jar文件
  2. 将复制的jar文件粘贴到lib文件夹中

  3. 右键单击此jar文件,然后单击Build Path->Add to Build Path enter image description here

  4. 即使仍然在项目中遇到错误,也要清理项目并构建


1

我已经通过从我的项目中删除android-support-v4.jar来解决了这个问题。因为appcompat_v7已经拥有它的副本。

如果您已经导入了appcompat_v7,但仍然无法解决问题。那么请尝试一下这个方法。


0

Android Studio 2.2.3 Linux Mint 18.1

在“项目视图”中打开Gradle Scripts -> build.gradle(Module:app),将鼠标指针放在dependencies一词内。

点击灯泡,然后点击“添加库依赖项”,我需要的所有库都列在那里。

例如,对于我来说,出现了以下库: compile 'com.android.support:gridlayout-v7:25.1.0' compile 'com.android.support:support-v13:25.1.0'

我现在想在Gradle的默认配置中默认添加android支持。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接