最近编译一个老项目时,项目可以正常运行,就是AS里面报红,提示无法解析到v7包,找不到android.support.v7.app.AppCompatActivity。
控制台错误信息如下:
Cannot resolve symbol 'v7'
Cannot resolve symbol 'AppCompatActivity'
...
1、项目配置
app目录下的build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
applicationId "com.caowj.test"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
}
2、问题排查:
1、尝试了删除.idea目录下内容,再重新编译。无效
2、引入:import androidx.appcompat.app.AppCompatActivity。无效
3、尝试清楚缓存:File -> Invalidate Caches -> Invalidate and Restart 。无效
3、修复方法:
无意中看到了AS的提示:
Project update recommended: Android Gradle Plugin can be upgraded.
抱着试一试的心态,点击了AS的升级按钮 upgraded :
Sync Now之后,项目中的报错解决了。
升级前:
- AS:Android Studio Bumblebee | 2021.1.1 Patch 3
- AGP:3.2.1
- Gradle:4.8.1
- JDK:8
升级后:
- AS:Android Studio Bumblebee | 2021.1.1 Patch 3
- AGP:7.1.3
- Gradle:7.2
- JDK:11
注意:根据自己的AS的版本,使用对应的Gradle版本和AGP版本。(建议使用AS提示中的推荐版本)
注意:根据自己的AS的版本,使用对应的Gradle版本和AGP版本。(建议使用AS提示中的推荐版本)
注意:根据自己的AS的版本,使用对应的Gradle版本和AGP版本。(建议使用AS提示中的推荐版本)
参考链接: