xuexixuexi
xuexixuexi
  • 发布:2026-04-03 10:30
  • 更新:2026-04-06 17:23
  • 阅读:54

【报Bug】制作iOS自定义模拟器基座的时候,提示缺少'Assignables'模块

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 版本26.3.1 (a)

HBuilderX类型: 正式

HBuilderX版本号: 5.05

手机系统: iOS

手机系统版本号: iOS 17

手机厂商: 模拟器

手机机型: 模拟器需要机型吗?

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
import { Data } from 'Assignables';

操作步骤:
import { Data } from 'Assignables';

预期结果:
import { Data } from 'Assignables';

实际结果:
import { Data } from 'Assignables';

bug描述:

iOS Appstore(iOS模拟器) 打包失败
iOS Appstore(真机) 打包成功

模拟器打包报错信息如下:

HBuilderX版本号:5.05
uniapp 编译器版本: 5.05
云打包服务器SDK版本: 5.05

Error code = -5000
Error message:
UTS plugin uni_modules/jg-jpush-u compile error!

uni_modules/jg-jpush-u

[PackagePath]/wgtRoot/UNI67B07A4/uni_modules/jg-jpush-u/utssdk/app-ios/src/index.swift:3:8: error: Unable to find module dependency: 'Assignables'

STDERR ERROR:
[PackagePath]/wgtRoot/UNI67B07A4/uni_modules/jg-jpush-u/utssdk/app-ios/src/index.swift:3:8: error: Unable to find module dependency: 'Assignables'
import Assignables
^
[PackagePath]/wgtRoot/UNI67B07A4/uni_modules/jg-jpush-u/utssdk/app-ios/src/index.swift:3:8: note: a dependency of main module 'unimoduleJgJpushU'
import Assignables
^
BUILD FAILED The following build commands failed:
SwiftDriver unimoduleJgJpushU normal x86_64 com.apple.xcode.tools.swift.compiler (in target 'unimoduleJgJpushU' from project 'UTS')
(1 failure)

2026-04-03 10:30 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

作为DCloud官方人员,对该bug反馈评审如下:

反馈质量评价

1. 内容完整性分析

基本信息:反馈包含了必要的版本信息(HBuilderX 5.05、uniapp编译器5.05)、平台信息(iOS模拟器 vs 真机)、错误日志(编译错误、缺少Assignables模块),这部分较为完整。

不足之处

  • 复现步骤过于简陋:仅提供了一行代码import { Data } from 'Assignables';,未提供完整的复现流程(如:是否新建项目即可复现?是否必须依赖jg-jpush-u插件?)
  • 预期/实际结果描述缺失:仅重复了代码片段,没有文字描述预期的编译成功结果和实际的编译失败现象
  • 缺少最小复现工程:涉及第三方UTS插件(jg-jpush-u),建议提供可复现的demo工程

2. 问题性质判断

根据错误日志分析,这是UTS插件编译失败问题,具体表现为:

  • 插件uni_modules/jg-jpush-u在iOS模拟器(x86_64架构)编译时,无法找到Swift模块Assignables
  • 真机打包成功,说明该模块在arm64架构(真机)上存在,但在x86_64架构(模拟器)上缺失

参考知识库中UTS编译器已知问题的相关说明,此类Unable to find module dependency错误通常属于插件依赖了特定平台的原生库,但缺少对应架构的实现。

3. 可能的原因

基于知识库中关于iOS模拟器架构差异的说明:

  • iOS模拟器(特别是x86_64架构)与真机(arm64)的原生库存在差异
  • 第三方插件jg-jpush-u可能只集成了真机所需的Assignables框架,未提供模拟器版本
  • 或者该插件的Swift依赖在模拟器编译时未正确链接

4. 建议与结论

该反馈不属于HBuilderX或uni-app的bug,而是第三方UTS插件(jg-jpush-u)的兼容性问题。建议:

  1. 联系插件作者:向jg-jpush-u插件作者反馈,要求其补充iOS模拟器(x86_64)架构的支持,或提供模拟器专用的依赖配置

  2. 临时解决方案

    • 如需在模拟器调试,尝试使用真机运行(您已验证真机打包成功)
    • 检查该插件是否有配置项可以关闭模拟器不支持的功能
  3. 完善反馈信息(如需进一步排查):

    • 提供完整的复现工程(包含jg-jpush-u插件的最小demo)
    • 说明该插件在HBuilderX 4.x版本是否正常(以确认是否是5.05版本的兼容性问题)

补充:如确认是插件问题,建议在插件市场该插件页面提交issue,而非在uni-app框架层面报bug。

内容为 AI 生成,仅供参考
月影银翔

月影银翔

估计是云端打包机升级到xcode26的问题。我也遇到了。

要回复问题请先登录注册