包android.support.v4.app不存在;在Android studio 0.8中

时间:2014-07-03 05:26:26

标签: java sdk ide android-studio android-support-library

我最近将android studio IDE更新为0.8以使用新的Android L SDK。首先,我导入了一个完成的android项目,在旧版本的android studio中没有收到任何错误。在版本0.8 i行中,如

import android.support.v4.app.Fragment;
get:无法解析支持导致其余代码出错。 logcat返回101个

实例
Error:(8, 30) error: package android.support.v4.app does not exist
每次我在import语句中调用支持库时,

1。

我已经尝试了

  • 重新安装IDE
  • 删除构思文件夹的内容
  • 重新安装所有SDK - 包括支持库
  • 同步gradle
  • 手动将支持库复制到libs文件夹
  • 重建项目
  • 以及创建测试库的新项目

不完全确定剩下要做什么。

14 个答案:

答案 0 :(得分:106)

好的,所以我遇到了同样的问题,并在udacity论坛中找到了解决方案:

在Android Studio中:

  1. 右键点击您的项目" app"文件夹并单击 - >模块设置
  2. 点击"依赖关系"标签
  3. 点击+号添加新的依赖项,然后选择" Library Dependency"
  4. 查找您需要的库并添加它

答案 1 :(得分:33)

@boernard的回答从Android Studio IDE解决了这个问题,但是如果你想了解幕后发生的事情,那就是一个简单的gradle构建文件更新:

您可以在IDE中编辑build.gradle文件(左窗格:Gradle Scripts -> build.gradle (Module: app))或使用原始路径(<proj_dir>/app/build.gradle) 并添加/更新以下依赖项部分:

dependencies {
    //
    // IDE setting pulls in the specific version of v4 support you have installed:
    //
    //compile 'com.android.support:support-v4:21.0.3'

    //
    // generic directive pulls in any available version of v4 support:
    //
    compile 'com.android.support:support-v4:+'
}

使用上面的通用编译指令,您可以将代码发送给任何人,只要他们安装了Android Support Libraries v4的某个级别。

答案 2 :(得分:8)

以上解决方案均不适合我。最终起作用的是:

代替

/Home

使用此

import android.support.v4.content.FileProvider;

此路径从AndroidX(重新包装的Android支持库)开始更新。

答案 3 :(得分:7)

[出于某些原因,这个答案与Eclipse有关,而不是Android Studio!]

您是否尝试过将支持库设置为类路径?来自Android开发人员网站的This link有一些关于如何做到这一点的信息。

请尝试从网站上执行以下步骤:

根据支持库代码创建库项目:

  • 确保您已使用SDK Manager下载了Android支持库。
  • 创建一个库项目并确保项目的构建路径中包含所需的JAR文件:

    • 选择文件&gt;导入即可。
    • 选择E xisting Android Code Into Workspace ,然后点击下一步。
    • 浏览到SDK安装目录,然后浏览到Support Library文件夹。例如,如果要添加 appcompat 项目,请浏览到/ extras / android / support / v7 / appcompat /.
    • 单击“完成”以导入项目。对于v7 appcompat项目,您现在应该看到一个名为 android-support-v7-appcompat 的新项目。
    • 在新的库项目中,展开 libs / 文件夹,右键单击每个.jar文件,然后选择构建路径&gt;添加到构建路径。例如,在创建v7 appcompat项目时,将android-support-v4.jar和android-support-v7-appcompat.jar文件添加到构建路径。
    • 右键单击库项目文件夹,然后选择构建路径&gt;配置构建路径
    • 订单和导出标签中,检查刚添加到构建路径的.jar文件,以便它们可供依赖此库项目的项目使用。例如,appcompat项目要求您导出android-support-v4.jar和android-support-v7-appcompat.jar文件。
    • 取消选中 Android依赖关系
    • 单击“确定”完成更改。
  • 您现在拥有所选支持库的库项目,可以与一个或多个应用程序项目一起使用。

    • 将库添加到您的应用程序项目中:
    • 项目浏览器中,右键单击您的项目,然后选择属性
    • 在对话框左侧的类别面板中,选择 Android
    • 资料库窗格中,点击添加按钮。
    • 选择库项目,然后单击“确定”。例如,appcompat项目应列为android-support-v7-appcompat。
    • 在属性窗口中,单击“确定”。

答案 4 :(得分:6)

删除

/.idea/libraries

然后同步gradle构建项目。

答案 5 :(得分:2)

tl; dr settings.gradle中删除所有与支持库相关的未使用模块。

长版:

在我们的案例中,我们已将支持库声明为common.gradle文件中所有模块(一个app模块和多个库模块)的依赖项,该文件由每个模块导入。但是有一个库模块未被声明为任何其他模块的依赖项,因此不构建。在每一个同步中,Android Studio都会选择那个精确的模块作为查找支持库的模块(这就是为什么它似乎随机发生的原因)。由于此模块从未使用过,因此从未进行构建,这反过来导致jar文件不在模块的中间文件夹中。

settings.gradle删除此库模块并再次同步为我们解决了问题。

答案 6 :(得分:1)

在我的情况下,错误出在我项目的模块上。我已通过添加解决了此问题

dependencies {
    implementation 'com.android.support:support-v4:20.0.+'
}

此依赖在相应模块的gradle中

答案 7 :(得分:0)

IN ECLIPSE LUNA 我在项目中使用上下文菜单解决了这个问题:ANdroid Tools&gt;添加支持库...

答案 8 :(得分:0)

对于我来说,该问题已通过将字符串cordova.system.library.2=com.android.support:support-v4:+附加到platforms/android/project.properties文件中而解决了

答案 9 :(得分:0)

对我来说,问题是由Gradle脚本列表中的gradle.properties文件引起的。它显示为gradle.properties(全局),并引用了C:\ users \ .gradle \ gradle.properties中的文件。我右键单击它,然后从菜单中选择“删除”以将其删除。它从硬盘上删除了文件,现在我的项目已生成并运行。我猜想全局文件正在覆盖用于定位包android.support的内容

答案 10 :(得分:0)

错误:程序包android.support.v4.content不存在 导入android.support.v4.content.FileProvider;

使用jetify有助于解决问题。

来自jcesarmobile的帖子---> https://github.com/ionic-team/capacitor/pull/2832

错误:“软件包android.support。*不存在” 当某些Cordova或Capacitor插件具有旧的android支持依赖性而不是使用新的AndroidX等效项时,会发生此错误。 您应该在插件存储库中报告该问题,以便维护人员可以更新插件以使用AndroidX依赖项。

作为解决方法,您还可以使用jetifier修补插件

npm安装jetifier

npx jetify

npx cap android

答案 11 :(得分:0)

我的解决方案是使用Use legacy support library选项checked创建一个项目。成功完成项目创建后,只需从主项目中进入应用目录中的delete src文件夹和copy src文件夹。最后,Sync项目包含Gradle文件。

答案 12 :(得分:0)

将此添加到 build.gradle:

allprojects {
    repositories {
        google()
    }
}
dependencies {
    implementation "com.android.support:support-core-utils:28.0.0"
}

*必须有 minSdkVersion 14(或更高版本)

答案 13 :(得分:0)

// 运行这个命令 - 它修复了一切

离子cordova插件添加cordova-plugin-androidx-adapter