y***@163.com
y***@163.com
  • 发布:2026-01-12 11:16
  • 更新:2026-01-12 15:25
  • 阅读:47

本地运行正常,云端发布编译失败,但是相同代码别人可以编译成功

分类:HBuilderX

[HBuilder] 11:09:10.427 项目 gh_m_app_web [UNIBC45EC0] 开始发布到Web...
[HBuilder] 11:09:11.878 编译器版本:4.87(vue3)
[HBuilder] 11:09:11.878 正在编译中...
[HBuilder] 11:09:13.138 ​uni_modules/uni-config-center, uni_modules/uni-id, uni_modules/uni-open-bridge-common, uni_modules/uni-upgrade-center-app 使用了uniCloud,而项目未启用uniCloud。需在项目点右键创建uniCloud环境​
[HBuilder] 11:09:13.216 已忽略静态资源目录:static/app-plus/。详见:https://uniapp.dcloud.net.cn/tutorial/platform.html#static
[HBuilder] 11:09:13.228 ​已开启 uni统计2.0 版本​
[HBuilder] 11:09:13.609 ​<script src="/static/js/echarts/echarts.5.6.0.min.js"> in "/index.html" can't be bundled without type="module" attribute​
[HBuilder] 11:09:18.113 ​
[HBuilder] 11:09:18.113 static/image/shareNav/Workbench-title-line.png referenced in E:/01_项目管理/00_gitlab/cosco_guangzhou_pro/mobile/gh_m_app_web/pages/shareNavComponent/shareNavComponent.nvue?vue&type=style&index=0&scoped=23168194&lang.less didn't resolve at build time, it will remain unchanged to be resolved at runtime​
[HBuilder] 11:09:18.981 ​[plugin:vite:resolve] Module "fs" has been externalized for browser compatibility, imported by "D:/HBuilderX/plugins/compile-dart-sass/node_modules/sass/sass.dart.js". See https://vitejs.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.​
[HBuilder] 11:09:26.128 x Build failed in 12.47s
[HBuilder] 11:09:26.129 欢迎将web站点部署到uniCloud前端网页托管平台,高速、免费、安全、省心,详见:https://uniapp.dcloud.io/uniCloud/hosting
[HBuilder] 11:09:26.129 Cannot read properties of undefined (reading 'length')
[HBuilder] 11:09:26.205 项目 gh_m_app_web 编译失败。

2026-01-12 11:16 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

该问题请在专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

根据编译日志分析,主要问题在于项目使用了uniCloud相关模块但未启用uniCloud环境,同时存在资源引用和依赖配置问题:

  1. 核心问题:日志明确提示uni_modules/uni-config-center...使用了uniCloud,而项目未启用uniCloud。虽然你只是发布Web,但项目中引入了uniCloud依赖模块(如uni-id),需要统一处理:

    • 方案一:若不需要uniCloud功能,移除package.json@dcloudio/uni-config-centeruni-id等uniCloud相关依赖
    • 方案二:若需uniCloud功能,必须在项目根目录右键创建uniCloud环境(这是关键步骤)
  2. echarts引入问题<script src="/static/js/echarts..."> can't be bundled without type="module"
    修改index.html中的引入方式为:

    <script type="module" src="/static/js/echarts/echarts.5.6.0.min.js"></script>  
  3. sass编译异常Module "fs" has been externalized
    这是HBuilderX 4.87版本Vite插件对Node模块的兼容处理,需确保:

    • 项目根目录创建vite.config.js,添加browser兼容性配置
    • 检查package.json中sass相关依赖版本是否匹配(参考quickstart > npm安装
  4. 环境差异排查

    • 执行npm install前先删除node_modulespackage-lock.json
    • 确认本地Node.js版本与云端一致(建议v16+)
    • 检查manifest.json中是否误配了uniCloud相关参数

特别注意:相同代码他人能编译成功,说明是本地环境配置差异导致。重点检查:

  • HBuilderX插件版本(帮助 > 检查更新)
  • 项目manifest.json中的transpilerprocessor配置
  • 是否混用了Vue2/Vue3语法(日志显示编译器版本4.87 vue3)

建议操作流程:

  1. 移除不必要的uniCloud依赖 → 2. 修复echarts引入 → 3. 清理依赖重装 → 4. 重新编译
    若仍需uniCloud功能,请严格按部署到uniCloud文档完成前置配置。
内容为 AI 生成,仅供参考
y***@163.com

y***@163.com (作者)

[HBuilder] 15:24:26.283 项目 gh_m_app_web [UNI5886BE0] 开始发布到Web...
[HBuilder] 15:24:27.767 编译器版本:4.87(vue3)
[HBuilder] 15:24:27.769 正在编译中...
[HBuilder] 15:24:29.011 已忽略静态资源目录:static/app-plus/。详见:https://uniapp.dcloud.net.cn/tutorial/platform.html#static
[HBuilder] 15:24:29.014 ​已开启 uni统计2.0 版本​
[HBuilder] 15:24:36.047 ​[plugin:vite:resolve] Module "fs" has been externalized for browser compatibility, imported by "D:/HBuilderX/plugins/compile-dart-sass/node_modules/sass/sass.dart.js". See https://vitejs.dev/guide/troubleshooting.html#module-externalized-for-browser-compatibility for more details.​
[HBuilder] 15:24:44.512 x Build failed in 15.12s
[HBuilder] 15:24:44.512 欢迎将web站点部署到uniCloud前端网页托管平台,高速、免费、安全、省心,详见:https://uniapp.dcloud.io/uniCloud/hosting
[HBuilder] 15:24:44.519 Cannot read properties of undefined (reading 'length')
[HBuilder] 15:24:44.670 项目 gh_m_app_web 编译失败。

要回复问题请先登录注册