You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修正HillfortStore类包名后触发:app:transformClassesWithDexBuilderForDebug错误求助

解决修正包名后出现的DexBuilder构建错误

我之前也踩过一模一样的坑!当你修正了类的包名,但项目里还残留着旧包名的编译产物或者类文件时,就会触发这种Dex构建冲突错误。下面是几个亲测有效的解决步骤:

  • 彻底清理编译产物并重建项目
    Android Studio的编译缓存里大概率还存着旧包名的.class和.dex文件,先执行这两步:

    1. 点击菜单栏的 Build > Clean Project
    2. 接着点击 Build > Rebuild Project
      这一步能把所有旧的编译产物清空,重新基于新包名生成完整的编译文件。
  • 检查项目中是否存在重复类
    有时候旧包名的HillfortStore类可能还藏在项目的某个角落——比如你没删干净的备份文件、版本控制拉下来的旧代码,甚至是某个模块的测试目录里。去项目的文件系统里手动排查一下,确保只有修正后包名的HillfortStore类存在,把重复的旧类彻底删除。

  • 排查跨模块/第三方库的引用
    如果这个HillfortStore类被其他模块或者第三方依赖引用了,一定要确认那些地方的导入包名也都同步修正了。另外,要是不同模块里出现了全类名相同的类,也会触发Dex的重复定义错误,仔细核对跨模块的引用路径。

  • Invalidate Caches 重置IDE缓存
    如果上面的方法都没解决问题,试试Android Studio的终极解决方案:点击 File > Invalidate Caches...,勾选 Invalidate and Restart。这会清空IDE的所有缓存和索引,很多奇奇怪怪的编译问题都能靠这招搞定。

顺便说下为什么之前错包名还能正常运行:其实是因为当时类的实际包名和你导入的包名是一致的(虽然都是错的),编译系统能正确找到对应的类文件并打包进dex。但修正包名后,新旧两个全类名的类(旧错包名和新正确包名)同时存在于编译过程中,Dex构建时无法处理重复的类定义,就抛出了这个错误。

内容的提问来源于stack exchange,提问作者John O Sullivan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:14:41