无法解析符号'AppCompatActivity'

问题描述 投票:189回答:34

我刚刚尝试使用Android Studio。我创建了空白项目,并试图创建扩展ActivityAppCompatActivity。不幸的Android Studio“说”它

无法解析符号'AppCompatActivity'

我在“app”模块的依赖列表中有compile "com.android.support:appcompat-v7:22.0.+",并且多次重建项目。但是我只能使用ActionBarActivity。我究竟做错了什么?

android android-studio gradle android-support-library android-appcompat
34个回答
327
投票

对于在使用正确的lib版本和正确的类时具有相同错误的任何人来说,这里有一点补充。

当我升级到

appcompat-v7:22.1.0

其中ActionBarActivity被弃用并且是空的并且AppCompatActivty是要走的路,由于Android Studio中的一些小故障,它没有完全接受版本更改。

即使Gradle运行没有错误,IDE本身仍然说Cannot resolve symbol 'AppCompatActivity'(它也无法通过Ctrl+N搜索获得)

我查看了.idea/libraries文件夹,注意到新版本的lib没有合适的元文件。

因此,使用旧的可靠文件 - >无效缓存/重启就可以了。当您感觉Android Studio出现了神奇错误时,请务必尝试此操作。


7
投票

多数民众赞成真的疯了,我尝试了一切,与Gradle文件同步,无效并重新启动android studio。问题仍然存在。最后一种方法是删除.idea / libraries文件夹,它就像魅力一样。


6
投票

您可以使用新的AppCompatActivity appcompat-v7:22.1。+只需将其添加到您的gradle:

编译'com.android.support:appcompat-v7:22.1.1'


6
投票

对我来说,当我将appcompat v7更新为最新版本时问题已得到解决。

编译'com.android.support:appcompat-v7:25.3.0'

希望能帮助到你...:)


5
投票

在使用Mac OS X Yosemite Machine进行开发时,我遇到了Android SDK 23的同样问题。原来我没有Java SDK 7。

一旦我安装了Java SDK 7并将SDK从Android Studio指向新的SDK,一切都适合我。

以下是我遵循的步骤:

1)关闭Android SDK

2)从http://www.oracle.com/technetwork/java/javase/downloads/index.html安装适用于Mac OS X的Java SDK

3)启动Android SDK并将此项目的SDK指向新的1.7 Java SDK,方法是转到文件 - >项目结构 - > JDK位置

4)重启Android Studio

希望这有帮助


5
投票

所以我的同事推了他们的qazxsw poi,打破了一切。我从另一个应用程序复制了我的sdk路径并做了:

local.properties

3
投票

请记住按Alt + Enter或添加导入。

File -> Sync Project with Gradle Files

3
投票

以下都没有解决我的问题

  • 重启Android
  • 文件>>使用Gradle文件同步项目
  • 建立>>清洁项目
  • 构建>>重建项目
  • 文件>>使高速缓存/重新启动无效

相反,我通过将appcompat和设计依赖项的版本更新到最新版本来解决它。执行此操作:转到build.grade(Module:app)>> dependencies部分,然后在appcompat和design依赖项上单击ALT + ENTER然后选择在我的情况下显示的版本是24.2.1,如图所示import android.support.v7.app.AppCompatActivity;


3
投票

我将Gradle 2.3.3更新为4.4,并在AppCompatActivity和Cardview上出现错误。我尝试了干净的项目和重建项目。它不起作用,然后我去项目文件夹 - > .idea - >创建库文件夹的备份并删除它 - >然后重建项目解决了我的问题。


2
投票

在升级到最新的支持库后,我不得不升级到最新的Android studio(beta)版本和gradle版本,然后再次识别AppCompatActivity(无效缓存和重启没有做到这一点)


2
投票

在项目构建.gradle中添加此依赖项。

请按照以下示例。

enter image description here

156
投票

如果通过gradle文件/“Invalidate caches”的软方法和其他IDE工具不起作用,请使用硬方法:

  1. 退出Android Studio
  2. 在项目中导航到.idea文件夹
  3. 只需重命名libraries文件夹即可
  4. 重启Android Studio。它现在应该重新创建libraries文件夹并再次工作。

这对我有用

Android Studio 3.1.2
Build #AI-173.4720617, built on April 13, 2018
JRE: 1.8.0_152-release-1024-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.13.0-38-generic

Shahbaz Ali证实,它也有效

Android Studio 3.1.3
Build #AI-173.4819257, built on June 4, 2018
JRE: 1.8.0_152-release-1024-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.13.0-38-generic

moujib证实,它适用于Android Studio 3.2.1


2
投票

让我们一步一步走:首先使用清理项目

建设 - >清洁

如果这没有帮助,那么使用你的第二步

文件>无效缓存/重新启动...

但是当所有上述选项都不起作用时真正的问题就开始了,所以使用你的终极解决方案是关闭项目并转到项目位置目录并删除

。理念

您现在可以再次打开您的项目。


2
投票

最简单的方法

  • 打开应用级别qazxsw poi并删除appcompat-v7依赖关系和同步。
  • 再次添加依赖关系和同步。

错误消失了!

Before

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

After

build.gradle


1
投票

您必须通过添加一些依赖项来对Gradle App文件进行一些更改

编译“com.android.support:appcompat-v7:XX:YY:ZZ”

而XX:YY:ZZ是您在gradle文件中使用的版本代码,否则如果您将此版本设置为低于或高于您正在使用的版本,那么您的应用程序将面临一些问题,例如有时会崩溃


1
投票

我只是将我的android工作室从2.3.2更新到3.1.2版本。并发生此错误。

我清理项目,重建项目,无效缓存/重启,但没有任何作用。

我通过更新appcompat库来解决此错误

编译'com.android.support:appcompat-v7:23.4.0'

编译'com.android.support:appcompat-v7:25.1.1'

在app build.gradle文件中。


1
投票

如果无效缓存没有帮助,只需关闭项目然后重新打开它。脚步:

  • 文件>关闭项目
  • 从项目开始列表中删除项目
  • 关闭Android Studio
  • 打开Android Studio
  • 使用此项目打开现有项目

0
投票

对我来说,当我更新Gradle构建版本时问题已得到解决。不知道为什么?


0
投票

我会告诉你我是如何在日食中解决这个问题的。从这个链接下载zip文件.before然后提取这个文件,打开项目,在lib文件夹中你会看到一个名为“android-support-v7-appcompat”的jar文件,将这个jar文件添加到你的项目中。而已。 after


0
投票

这可能是应用程序级别的版本差异,请检查一次,然后重新构建


0
投票

对我来说,没有任何解决方案。但我发现我的外部库中缺少支持库的所有库。在其他项目中,AppCompatActivity的解决没有问题。

对我来说,它创建了一个新项目并将旧src文件夹的所有内容复制到新项目中。

我不确切知道为什么,但如果什么都不起作用,那可能是最后一种可能性。就好像有人和我一样有麻烦。


0
投票

通过尝试软方式它不会工作,使用困难的方法:退出当前Android Studio屏幕并将您的项目转到.idea文件夹重命名libraries-> lib_pre文件夹。

重新启动Android Studio。它现在将重新创建库文件夹并再次使用Smoothly。 Android Studio 3.1.3


70
投票

今天(4月22日),您可以使用随支持库v 22.1.0发布的新AppCompatActivity

只需改变你的依赖:

compile "com.android.support:appcompat-v7:22.1.0"

Here你可以找到关于这个新课程的更多信息。


0
投票

这是我在某处发现的救生员代码(抱歉不记得原点)。将它添加到build.gradle(模块:app)。您可以将版本替换为相关版本。

https://github.com/dandar3/android-support-v7-appcompat

27
投票

我通过转到build.gradle文件并依赖于appcompat来修复它,类似于编译'com.android.support:appcompat-v7:XX.X.X'

将其更改为编译'com.android.support:appcompat-v7:XX.X.+'

然后单击“同步”。如果代码中的其他所有内容都正确,那么所有的红色波浪线应该都会出现。


25
投票

这太简单了。您需要遵循的步骤

1-Exit Android工作室。

2 - 转到项目目录。

3 - 在我的情况下是这样的(F> Android-> YourProjectName - >。idea)。

4)-delete库文件夹存在于.idea文件夹中。

5) - 重启你的android工作室。并且您的问题已得到解决。


13
投票

检查拼写错误,当我实际输入AppCompactActivity而不是AppCompatActivity时,我整天都在寻找解决方案


13
投票

在将Android Studio从2.2.3更新到2.3,将Android Gradle插件更新为2.3.0,并将Gradle更新为3.3后,我得到了AppCompatActivity和许多其他类和方法的Cannot resolve symbol错误。

File -> Invalidate Caches / Restart没有解决这个问题。

Preferences -> Build, Execution, Deployment -> Gradle展示了使用Gradle home选择的Use local gradle distribution:/ Applications / Android Studio.app/Contents/gradle/gradle-2.14.1并显示一条警告,说明gradle位置不正确。

通过选择Use default gradle wrapper (recommended)解决了问题。 可能只是指向新的本地分发位置也可以。


10
投票

无法解析符号AppCompatActivity问题。

执行简单步骤来解决问题。

i)退出Android工作室。

ii)转到您的项目目录。

iii)在项目目录中找到.idea文件夹。

iv)删除.idea文件夹。

v)重启你的android工作室。

vi)问题将得到解决。


8
投票

试试这个。在Android Studio中,将依赖项放在build.gradle中之后。转到Build - > Clean Project。

它对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.