Ionic3应用报错Execution failed for task ':app:checkDebugDuplicateClasses'
Ionic3
Execution failed for task ':app:checkDebugDuplicateClasses' 报错解决方案 该报错为Android构建过程中多个插件/依赖引入了重复类导致,可按以下步骤逐一排查解决:
- 第一步:清理旧的构建缓存与平台文件
依次执行以下命令:
注意Ionic3适配最高的官方安卓平台版本为8.x,不要使用9.0及以上版本,避免出现兼容性冲突。ionic cordova platform rm android rm -rf plugins node_modules package-lock.json npm install ionic cordova platform add android@8.1.0 - 第二步:处理AndroidX与旧版support库冲突
Ionic3原生插件多数默认使用旧版com.android.support库,若部分新插件已切换到AndroidX,会出现类冲突,安装适配插件即可:ionic cordova plugin add cordova-plugin-androidx ionic cordova plugin add cordova-plugin-androidx-adapter - 第三步:强制统一依赖版本
在项目根目录的config.xml中添加以下全局配置,统一指定依赖版本避免多版本共存:
也可以在<preference name="AndroidXEnabled" value="true" /> <preference name="PlayServicesVersion" value="17.0.0" /> <preference name="AndroidSupportV4Version" value="28.0.0" /> <preference name="AndroidSupportAppcompatV7Version" value="28.0.0" />platforms/android/build.gradle的根节点下添加强制版本规则:configurations.all { resolutionStrategy.force 'com.android.support:support-v4:28.0.0' resolutionStrategy.force 'com.android.support:appcompat-v7:28.0.0' } - 第四步:排查冲突插件
若以上步骤无效,检查近期新增的插件,避免同时安装功能重叠的同类插件(如同时安装两个推送插件、两个文件处理插件),卸载冗余插件后重新构建即可。 - 临时验证方案:构建前清理gradle缓存
进入platforms/android目录执行:
再回到项目根目录执行./gradlew cleanionic cordova run android --device验证。
内容的提问来源于stack exchange,提问作者Muhammad Umer Ali
相关产品推荐
相关产品推荐

