繁体   English   中英

错误“包 android.support.v7.app 不存在”

[英]Error "package android.support.v7.app does not exist"

我是android开发新手,一直在使用命令行工具创建android项目。 我遵循了android 开发人员教程中给出的所有说明。 但是,他们更关注 IDE 用户。

当我尝试从 ActionBarActivity 而不是 Activity 扩展我的 MainActivity 类时,它抛出了以下错误。

错误:包 android.support.v7.app 不存在

它抱怨这个导入声明。

import android.support.v7.app.ActionBarActivity;

我确保访问了 SDK 管理器,它说已安装 Android 支持库。 我真的被这个难住了,我真的很感激你们能给我的任何帮助。

这可能有帮助: http : //developer.android.com/reference/android/support/v7/app/ActionBarActivity.html

首先检查您的项目是否使用 androidx 或 android 支持库。 检查 gradle.properties 文件:

android.useAndroidX=true

android.enableJetifier=真

如果它包含以上几行,则它使用的是带有旧教程中的旧代码的 androidx。

在 build.gradle (module:app)

implementation 'androidx.appcompat:appcompat:1.0.0'

代替

compile 'com.android.support:appcompat-v7:28.0.0'

同样在 MainActivity.java 中:使用

import androidx.appcompat.app.AppCompatActivity;

代替 :

import android.support.v7.app.AppCompatActivity;

如果从 MainActivity.java 报告问题,则替换

import android.support.v7.app.AppCompatActivity;

import androidx.appcompat.app.AppCompatActivity;

您的项目缺少 SDK 中的支持库。

如果您还没有安装它们,只需右键单击project > Android Tools > Install support library

然后,只需导入到工作区,作为一个 Android 项目, android-support-v7-appcompat ,位于${android-sdk-path}/extras/android/support/v7

最后,右键单击 Android project > Properties > Android Tab Add按钮并添加支持项目"android-support-v7-appcompat"作为依赖项。

清理您的项目,必须编译并正常工作。

使用Android Studio你必须添加教程中没有指出的支持库的依赖

dependencies {

    implementation 'com.android.support:appcompat-v7:22.0.0'
}

如果您使用的是最新的 Android Studio,那么 v7 库与 AndroidX 相矛盾,您只需要做的是:

在项目文件中进入 gradle.properties
找出android.useAndroidX=true然后将其设置为android.useAndroidX=false
找出android.enableJetifier=true然后将其设置为android.enableJetifier=false
重建你的项目,一切都会正常的。

切换到 AndroidX 对我有帮助: import androidx.appcompat.app.AppCompatActivity;

物有所值:

我在使用 Xamarin 时遇到了这个问题,即使我确实安装了 v4 和 v7 的支持包。

通过执行 Build -> Clean All 为我解决了这个问题。

对于迁移到 androidx 的用户,这里是新包的映射列表: https : //developer.android.com/jetpack/androidx/migrate#class_mappings

使用implementation 'androidx.appcompat:appcompat:1.0.0'

而是支持库implementation 'com.android.support:appcompat-v7:28.0.0'

首先检查您的项目是否使用androidx或android支持库。 检查gradle.properties文件:

android.useAndroidX=true
android.enableJetifier=true

如果包含以上几行,则说明它是将androidx与旧教程中的旧代码一起使用。

在build.gradle(module:app)中

采用

implementation 'androidx.appcompat:appcompat:1.0.0'

代替

compile 'com.android.support:appcompat-v7:28.0.0'

同样在MainActivity.java中:使用

import androidx.appcompat.app.AppCompatActivity;

代替 :

import android.support.v7.app.AppCompatActivity;

(对我有用)感谢分享。

如果您的应用是 AndroidX,此回复可能适用于您的问题:

npm install --save-dev jetifier
npx jetify (may take a while)
npx react-native run-android

尝试从其他工作 PC 复制 C:\\Program Files\\Java\\jdk1.8.0_121 && C:\\Program Files\\Java\\jre1.8.0_121 然后全部(清理 && 重建)

如果您使用的是 SDK 28 或更高版本,则需要迁移到 AndroidX 库。

对于 Android Studio 3.2 及更高版本,您可以通过从菜单栏中选择 Refactor > Migrate to AndroidX 将现有项目迁移到 AndroidX。

对于 AndroidX 在 gridle 中实现以下库

implementation 'androidx.palette:palette:1.0.0'

并在活动中导入以下课程 -

import androidx.palette.graphics.Palette;

有关更多信息,请参阅 AndroidX 的类和映射https://developer.android.com/jetpack/androidx/migrate/artifact-mappings https://developer.android.com/jetpack/androidx/migrate/class-mappings

我是初学者,但我为我的代码所做的工作是导入 androidx 因此替换了 android.v7 然后我删除了 support.v7 行并且我的代码工作。 很抱歉,我无法用更多技术术语来解释,但这对我有用。 实际上,Java 代码是我从旧教程中复制的代码,因此遇到了错误。 希望这可以帮助。

我今天刚收到这个错误,这就是我修复的方法。

  • 在我的构建输出中,我双击出现错误的类。
  • 课程打开后,我扩展了导入部分并删除了存在错误的现有导入。
  • 然后我将鼠标悬停在以下错误附近:RecyclerView、LinearLayoutManager 和 FragmentTransaction 并选择 Alt+Enter 以导入适当的类。

注意:就我而言,错误发生在我将一个旧项目迁移到 androidx 后,因此导入很难与 androidx 相关。 我正在使用安卓工作室。

注意:您可能会遇到其他问题,因此每次遇到错误时,我都会检查其他被调用的类并确保它们的导入是正确的。 我所做的主要是按 ctrl+shift+R,然后将旧的导入放在第一个字段中,将正确的导入放在第二个字段中,然后全部替换。 这样,我一次替换了项目中的所有导入。

您可以使用 ctrl+shift+f 来查找使用导入的位置。

现在是 2020 年 12 月。 同样的问题以不同的方式出现在我身上。 当我打算在 google play 商店中进行部署时,它说我必须创建高于 android v28 的包,并且我使用 Android 版本 30(在 Xamarin Android 项目属性中)更新了我的项目编译。 不可能用同样的错误来做(Android 支持库不支持 V7)。 我尝试了上面提到的所有内容,但没有奏效,这对我有用。 我在 splashactivity.cs 中使用它

using Android.Support.V7.App;

它是一个给我带来麻烦的人,我把它改成了 V4

using Android.Support.V4.App;

然后 AppCompatActivity 下划线为红色,我必须按如下方式获取 androidx appcompat 应用程序

using AndroidX.AppCompat.App;

现在它正在工作,它也可以帮助其他人。

如果您在下载新版本时遇到依赖项问题,请尝试...

文件....管理IDE设置...恢复默认设置

重建项目问题解决后..

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM