@color/colorPrimary @color/colorPrimaryDark @color/colorAccent not found

本文介绍如何在Android项目中,使用属性引用替代硬编码颜色值,提高应用主题的灵活性和维护性。通过修改styles.xml文件,将@color替换为?android:attr,实现颜色的动态引用。
将@color改为?android:attr

<?xml version="1.0" encoding="utf-8"?>
<resources>
   
  <!-- Base application theme. -->
  <style name="AppTheme_" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="android:colorPrimary">?android:attr/colorPrimary</item>
    <item name="android:colorPrimaryDark">?android:attr/colorPrimaryDark</item>
    <item name="android:colorAccent">?android:attr/colorAccent</item>
  </style>

</resources>
> Task :app:mergeDebugJavaResource FAILED [Incubating] Problems report is available at: file:///D:/android%20project/EasyEdge-Android-YoloV3_MobileNetV3_large-arm-SDK/build/reports/problems/problems-report.html FAILURE: Build completed with 3 failures. 1: Task failed with an exception. ----------- * What went wrong: Execution failed for task ':app:checkDebugDuplicateClasses'. > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable > Duplicate class javax.activation.ActivationDataFlavor found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.CommandInfo found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.CommandInfo$Beans found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.CommandInfo$Beans$1 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.CommandMap found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.CommandObject found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.DataContentHandler found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.DataContentHandlerFactory found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.DataHandler found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.DataHandler$1 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.DataHandlerDataSource found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.DataSource found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.DataSourceDataContentHandler found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.FileDataSource found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.FileTypeMap found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.MailcapCommandMap found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.MailcapCommandMap$1 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.MimeType found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.MimeTypeParameterList found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.MimeTypeParseException found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.MimetypesFileTypeMap found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.MimetypesFileTypeMap$1 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.ObjectDataContentHandler found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.SecuritySupport found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.SecuritySupport$1 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.SecuritySupport$2 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.SecuritySupport$3 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.SecuritySupport$4 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.SecuritySupport$5 found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.URLDataSource found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Duplicate class javax.activation.UnsupportedDataTypeException found in modules jakarta.activation-api-1.2.1.jar -> jakarta.activation-api-1.2.1 (jakarta.activation-api-1.2.1.jar) and javax.activation-1.2.0.jar -> javax.activation-1.2.0 (javax.activation-1.2.0.jar) Go to the documentation to learn how to <a href="d.android.com/r/tools/classpath-sync-errors">Fix dependency resolution errors</a>. * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org. ============================================================================== 2: Task failed with an exception. ----------- * What went wrong: Execution failed for task ':app:processDebugResources'. > A failure occurred while executing com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask$TaskAction > Android resource linking failed error: resource style/ThemeOverlay.AppCompat.Dark.ActionBar (aka com.baidu.ai.easyaimobile.demo:style/ThemeOverlay.AppCompat.Dark.ActionBar) not found. error: resource style/Theme.AppCompat.Light.DarkActionBar (aka com.baidu.ai.easyaimobile.demo:style/Theme.AppCompat.Light.DarkActionBar) not found. com.baidu.ai.edge.demo.app-mergeDebugResources-2:/values/values.xml:14: error: style attribute 'attr/colorPrimary (aka com.baidu.ai.easyaimobile.demo:attr/colorPrimary)' not found. com.baidu.ai.edge.demo.app-mergeDebugResources-2:/values/values.xml:15: error: style attribute 'attr/colorPrimaryDark (aka com.baidu.ai.easyaimobile.demo:attr/colorPrimaryDark)' not found. com.baidu.ai.edge.demo.app-mergeDebugResources-2:/values/values.xml:16: error: style attribute 'attr/colorAccent (aka com.baidu.ai.easyaimobile.demo:attr/colorAccent)' not found. error: resource style/ThemeOverlay.AppCompat.Light (aka com.baidu.ai.easyaimobile.demo:style/ThemeOverlay.AppCompat.Light) not found. error: failed linking references. * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org. ============================================================================== 3: Task failed with an exception. ----------- * What went wrong: Execution failed for task ':app:mergeDebugJavaResource'. > A failure occurred while executing com.android.build.gradle.internal.tasks.MergeJavaResWorkAction > 3 files found with path 'META-INF/DEPENDENCIES' from inputs: - D:\android project\EasyEdge-Android-YoloV3_MobileNetV3_large-arm-SDK\app\libs\httpclient-4.5.14.jar - D:\android project\EasyEdge-Android-YoloV3_MobileNetV3_large-arm-SDK\app\libs\httpcore-4.4.16.jar - D:\android project\EasyEdge-Android-YoloV3_MobileNetV3_large-arm-SDK\app\libs\httpmime-4.5.6.jar Adding a packagingOptions block may help, please refer to https://developer.android.com/reference/tools/gradle-api/8.2/com/android/build/api/dsl/ResourcesPackagingOptions for more information * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org. ============================================================================== Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.12/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 16s 26 actionable tasks: 3 executed, 23 up-to-date error: resource style/ThemeOverlay.AppCompat.Dark.ActionBar (aka com.baidu.ai.easyaimobile.demo:style/ThemeOverlay.AppCompat.Dark.ActionBar) not found. error: resource style/Theme.AppCompat.Light.DarkActionBar (aka com.baidu.ai.easyaimobile.demo:style/Theme.AppCompat.Light.DarkActionBar) not found. error: resource style/ThemeOverlay.AppCompat.Light (aka com.baidu.ai.easyaimobile.demo:style/ThemeOverlay.AppCompat.Light) not found. error: failed linking references.
07-10
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值