module错误集合

Library projects cannot set applicationId. applicationId is set to 'com.example.mylogin' in default 

在导入一个项目时,提示“Error:Library projects cannot set applicationId. applicationId is set to ‘com.xxx.yyy’ in default config.”,显然,library的build.gradle中不能指定“applicationId”。

Duplicate class android.support.v4.app.INotificationSideChannel found in modules core-1.12.0.aar -> 

这类错误怎么处理?

在Android开发中,遇到“Duplicate class android.support.v4.app.INotificationSideChannel found in mod”这个错误通常是因为你的项目中包含了重复的类或者库。这个问题经常发生在将多个库或模块合并时,特别是当你使用了Android Support库的不同版本或者在项目中同时使用了旧版的Android Support库和新的AndroidX库时。

解决方案

  1. 统一使用AndroidX库

    Android Support库已经过时,官方推荐使用AndroidX库。如果你的项目中还在使用Support库,建议迁移到AndroidX。你可以使用Android Studio的迁移工具来自动完成这一过程。

    • 在Android Studio中,打开Refactor -> Migrate to AndroidX

    • 跟随向导完成迁移。

  2. 移除重复的库

    如果你不想迁移到AndroidX,需要检查并移除项目中重复的库引用。这可以通过以下步骤完成:

    • 检查build.gradle文件:查看所有模块的dependencies部分,确保没有重复引入同一个库的不同版本。例如,确保没有同时包含androidx.core:corecom.android.support:support-core-utils

    • 使用Gradle依赖树分析:在Android Studio的Terminal中运行以下命令来查看项目的依赖树:

      
      
      
      

      ./gradlew app:dependencies

      查找android.support.v4androidx.core的重复条目,并决定保留哪一个版本。

    • 手动移除:在build.gradle文件中注释掉或删除不需要的依赖项。

  3. 清理和重建项目

    在解决了依赖问题后,清理并重建你的项目。在Android Studio中,你可以使用Build -> Clean ProjectBuild -> Rebuild Project

  4. 确保一致性

    在所有模块中保持一致的依赖版本,特别是那些涉及到Android Support库和AndroidX库的部分。

示例

如果你的build.gradle文件中出现了类似以下的配置:

//

最终我的解决方案:gradle.properties中配置:

android.useAndroidX=true

android.enableJetifier=true

那么为什么配置这个属性就可以解决这个问题:

android.enableJetifier 是一个在 gradle.properties 文件中配置的属性,用于自动迁移现有的第三方库以支持 AndroidX。当你设置 android.enableJetifier=true 时,Gradle 构建系统会尝试将所有依赖项从旧的支持库(例如 com.android.support)重写为使用 AndroidX 库。                   
原文链接:https://blog.csdn.net/sunboylife/article/details/146551346

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值