resource style/Theme.AppCompat.Light.NoActionBar failed linking

Android studio gradle 构建错误提示

resource style/Theme.AppCompat.Light.NoActionBar failed linking

烦死了、烦死了、烦死了

##添加依赖

implementation 'com.android.support:appcompat-v7:26.0.0'

### Android Gradle 构建失败问题分析 #### 1. **关于 `Could not resolve all files for configuration`** 此问题是由于依赖项无法解析引起的。通常是因为仓库配置不正确或者网络连接不稳定导致的。可以通过调整 `build.gradle` 文件中的仓库地址来解决问题[^2]。 ```groovy repositories { maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'http://maven.aliyun.com/nexus/content/groups/public' } } ``` 如果仍然存在问题,可以尝试通过全局设置文件 `init.gradle` 来覆盖默认的仓库配置[^3]: ```groovy allprojects { repositories { mavenLocal() maven { name "Alibaba"; url "https://maven.aliyun.com/repository/public" } mavenCentral() } } buildscript { repositories { maven { name "Alibaba"; url 'https://maven.aliyun.com/repository/public' } maven { name "M2"; url 'https://plugins.gradle.org/m2/' } } } ``` --- #### 2. **关于 `Failed to transform inmobi-ads-kotlin`** 该错误通常是由于插件版本冲突或兼容性问题引起。建议检查以下几点: - 确保使用的 `com.android.tools.build:gradle` 插件版本与当前项目的 Gradle 版本匹配[^4]。 - 如果使用的是较新的 Kotlin 或 AGP (Android Gradle Plugin),可能需要更新 `inmobi-ads-kotlin` 的版本到最新稳定版。 可以在 `build.gradle` 中添加以下内容以强制刷新缓存并重新下载依赖项: ```groovy configurations.all { resolutionStrategy.cacheChangingModulesFor 0, 'seconds' } ``` --- #### 3. **关于 `Error while dexing`** Dex 编译错误可能是由以下几个原因造成的: - 方法数超过 65K 限制:启用 multidex 支持[^4]。 ```groovy android { defaultConfig { multiDexEnabled true } } dependencies { implementation 'androidx.multidex:multidex:2.0.1' } ``` - 使用了过时的编译工具链:升级 Gradle 和 AGP 到最新版本,并确保 JDK 配置一致[^4]。 --- #### 4. **关于 `Android resource linking failed` 和 `attr/colorPrimary not found`** 此类错误表明某些资源未被正确加载。以下是常见解决方法: - 检查是否存在重复定义的样式或主题属性。 - 清理项目并重建:执行命令 `./gradlew clean` 后再同步 Gradle[^1]。 - 如果 TopOn_lib 提供的主题中有自定义颜色或其他资源,请确认其路径是否正确导入。 对于 `colorPrimary` 错误,可手动在 `res/values/styles.xml` 中声明缺失的颜色属性作为临时修复措施: ```xml <style name="AppTheme" parent="Theme.MaterialComponents.Light.DarkActionBar"> <item name="colorPrimary">@color/purple_500</item> <item name="colorPrimaryDark">@color/purple_700</item> <item name="colorAccent">@color/teal_200</item> </style> <color name="purple_500">#6200EE</color> <color name="purple_700">#3700B3</color> <color name="teal_200">#03DAC5</color> ``` --- #### 总结代码示例 综合以上解决方案,在根目录下的 `build.gradle` 文件中应用如下配置: ```groovy // Root build.gradle buildscript { ext.kotlin_version = '1.9.0' repositories { google() maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } } dependencies { classpath 'com.android.tools.build:gradle:8.0.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } allprojects { repositories { google() maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } } } ``` 模块级 `build.gradle` 示例: ```groovy apply plugin: 'com.android.application' apply plugin: 'kotlin-android' android { compileSdkVersion 33 defaultConfig { applicationId "com.example.myapp" minSdkVersion 21 targetSdkVersion 33 versionCode 1 versionName "1.0" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.6.1' implementation 'com.google.android.material:material:1.9.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'androidx.multidex:multidex:2.0.1' implementation 'com.inmobi.monetization:inmobi-ads-kotlin:9.0.1' } ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值