c***@gmail.com
c***@gmail.com
  • 发布:2026-08-25 02:20
  • 更新:2026-08-25 02:21
  • 阅读:47

uni-app x 云打包失败:UTS插件已进入WGT,但云端Gradle提示找不到 uni_modules module

分类:uni-app x

环境:

HBuilderX:5.24.2026081301

项目类型:
uni-app x

AppID:
UNIB57A8D3

应用版本:
2.0.5(versionCode 205)

打包方式:
Android → 原生App云打包 → 传统打包

问题描述:

最近项目新增两个本地UTS插件:

  1. uni_modules/dictation-tts
  2. uni_modules/dictation-card-ocr

本地编译正常:

npm run build:app

可以成功完成。

HBuilderX云打包过程中也能正常生成上传WGT。

已经检查上传的真实WGT文件:

UNIB57A8D3.wgt

确认包含:

uni_modules/dictation-tts

以及:

uni_modules/dictation-card-ocr

其中包含:

dictation-tts:

  • utssdk/app-android/config.json
  • Kotlin源码
  • index.kt

dictation-card-ocr:

  • utssdk/app-android/config.json
  • AnswerCardEngineV090.kt
  • PaddleOcrV5Recognizer.kt
  • OCR模型文件
  • 字典文件

但是云端Android Gradle构建阶段失败。

错误日志:

FAILURE: Build failed with an exception.

Where:
Build file '[PackagePath]/app/build.gradle' line: 189

错误:

Project with path ':uni_modules:dictation-tts' could not be found in project ':app'.

随后:

Project with path ':uni_modules:dictation-card-ocr' could not be found in project ':app'.

另外还有:

Element uses-permission#android.permission.WRITE_EXTERNAL_STORAGE duplicated

目前判断:

本地:

源码 ✅

uni_modules目录 ✅

WGT上传内容 ✅

UTS插件源码 ✅

问题应该发生在:

DCloud云端解包WGT后,
生成Android Gradle工程时,
UTS module没有正确创建。

已尝试:

  1. 删除HBuilderX缓存
  2. 清理dist/build/app
  3. 清理src/unpackage/dist/build/app-plus
  4. 删除旧WGT缓存
  5. 升级HBuilderX版本
  6. 统一uni-app相关依赖版本
  7. 确认项目只从src目录打开

但是云打包仍然出现同样错误。

想请教:

  1. 是否存在AppID对应的云端UTS模块缓存?
  2. 是否可以帮忙清理:

AppID:
UNIB57A8D3

对应的云打包缓存 / Gradle缓存 / UTS缓存?

  1. 目前这种:
    WGT包含UTS插件,但云端Gradle找不到module

是否属于云端构建环境异常?

感谢帮助。

2026-08-25 02:20 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

欢迎到专业群( uni-app x技术交流群 ) 咨询,群中有相关专业的管理员和群友。

你好,我是 DCloud 官方小助手。针对你遇到的 uni-app x 云打包问题,我进行了详细分析。

1. 核心结论

这确实属于云端构建环境异常或特定版本下的构建脚本解析 Bug。
既然你已经确认 WGT 包中完整包含了 uni_modules/dictation-ttsuni_modules/dictation-card-ocr,但云端 Gradle 依然提示 Project with path ':uni_modules:xxx' could not be found,这说明云端在解包 WGT 并生成 settings.gradle(或动态 include 模块)时,未能正确识别并注册这两个本地 UTS 模块。

2. 关于你提出的三个问题

Q1 & Q2: 是否存在 AppID 对应的云端缓存?能否帮忙清理?
DCloud 云端打包环境每次都会分配相对独立的构建容器,通常不存在持久的、导致构建脚本解析错误的“UTS 模块缓存”。作为 AI 助手,我无法直接操作后台为你清理缓存,但这通常不是缓存导致的,而是云端构建脚本在解析你当前项目结构时发生了异常

Q3: 是否属于云端构建环境异常?
是的。本地能编译、WGT 包结构完整,唯独云端 Gradle 找不到 Module,这是典型的云端工程生成阶段的异常


3. 深度排查与解决方案建议

在联系官方彻底排查之前,你可以尝试以下几个极有可能导致该问题的“工程级”排查点:

排查点 A:检查 config.json 的格式(高概率)

UTS 插件的 utssdk/app-android/config.json 会被云端解析并合并到 Gradle 中。如果这个 JSON 文件格式不标准(例如包含了注释 //、末尾多了逗号、或者包含 BOM 头),云端解析器可能会直接跳过该模块的注册,从而导致找不到 Module。

  • 操作建议:请确保这两个插件的 config.json严格的标准 JSON 格式。哪怕你本地用 // 注释能跑通,云端也可能会挂。请移除所有注释,确保 JSON 绝对纯净。
  • 参考文档UTS 插件 Android config.json 配置规范

排查点 B:目录权限与隐藏文件

检查本地 uni_modules/dictation-ttsdictation-card-ocr 文件夹的权限。如果其中包含了某些系统隐藏文件(如 .DS_Store 或 Windows 的 desktop.ini),或者文件夹被设置了特殊的系统权限,偶尔会导致云端解压或遍历目录时失败。

排查点 C:尝试“安心打包”或更换打包模式

你当前使用的是“传统打包”。建议在 HBuilderX 云打包界面,尝试勾选“安心打包”(如果可用),或者尝试打一个“自定义调试基座”,看是否依然报同样的错误。不同的打包通道在云端生成 Gradle 工程的脚本略有差异,这有助于定位是不是特定打包通道的 Bug。

排查点 D:关于 WRITE_EXTERNAL_STORAGE 重复

这个报错通常是因为插件的 config.json 中声明了权限,与主工程或其他插件冲突。虽然它目前显示为 Warning 或 Error,但它通常不会导致 Module 找不到。你可以暂时检查插件源码,看是否有重复声明权限的地方,先注释掉试试。


4. 下一步行动建议(如何向官方反馈)

由于你已经做了非常完善的本地排查,这基本可以实锤是云端构建链路的特定 Bug。为了解决这个问题,建议你直接通过以下方式联系 DCloud 官方工程师:

  1. 提交 Issue(最推荐)
    请前往 DCloud 官方 Issue 系统提交 Bug:https://issues.dcloud.net.cn/

    • 标题uni-app x 云打包失败:WGT包含UTS插件,但云端Gradle提示找不到 uni_modules module
    • 内容:直接把你上面写的这段极其详细的排查过程复制进去(包含 HBuilderX 版本 5.24、AppID、WGT 确认包含插件、具体的 Gradle 报错等)。
    • 附件:如果可能,将你的 uni_modules/dictation-ttsdictation-card-ocr 的目录结构截图,以及 config.json 内容贴出。
  2. 官方社区/群聊反馈
    如果你在官方技术交流群,可以直接 @DCloud_App_Array 或相关 Android 工程师,提供你的 AppID (__UNI__B57A8D3)打包失败的具体时间/错误日志链接,他们可以在后台直接调取该次打包的云端日志,查看为什么在生成 settings.gradle 时漏掉了你的插件。

总结:请先重点检查两个插件的 config.json 是否为无注释的纯 JSON 格式,这是最常见的导致云端解析失败的原因。如果确认无误,请直接提交 Issue 或联系官方客服,这属于云端构建环境的个案 Bug。

内容为 AI 生成,仅供参考

要回复问题请先登录注册