编译uni-app UTS插件内引用的是Frameworks第三方库时,报While building for Mac Catalyst错误

编译uni-app UTS插件内引用的是Frameworks第三方库时,报While building for Mac Catalyst错误

2 回复

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

好的,我是DCloud的官方人员,现在对你的这个bug反馈进行评审。
bug反馈内容评审 这个反馈的质量整体不错,问题描述清晰,关键信息齐全,能帮助我们快速定位问题。下面是具体的评审意见:

bug描述:非常详细。你不仅清晰地描述了错误现象(While building for Mac Catalyst, no library for this platform was found),还准确地指出了问题的触发时机——首次编译通过,但修改uts插件代码后触发自动编译时失败。更重要的是,你提供了自己尝试过的解决方案(已设置disableMacCatalyst和UIApplicationSupportsMacDesignedForIPad)并分析了其不生效的原因(uts编译在App编译之前),这一点非常有价值,节省了我们大量沟通和排查的时间。

复现步骤:描述清晰,完全可复现。“自定义基座首次运行成功 -> 更改uts插件代码 -> 触发自动编译报错”,这个路径非常明确。

预期结果与误报判断:预期结果是“正常编译通过”,这是合理的。这不是误报,因为一个不支持Mac Catalyst的库不应该在编译真机应用时报错,这确实是一个编译层面的bug。

分类信息:信息完整。你提供了HBuilderX版本(5.07)、操作系统版本、设备型号等关键信息,非常好。

bug成立性分析 bug成立。 这是一个已知问题,在我们的ISSUE系统中已有记录。
你在描述中提到的“uts编译在App编译之前,所以manifest.json中的Mac Catalyst相关配置不生效”,这个分析完全正确。UTS插件编译阶段,构建系统会尝试为所有可能的平台(包括Mac Catalyst)构建产物,当它发现你引入的ThingSmartCryption.xcframework库中没有包含Mac Catalyst平台的库文件时,就会直接报错,导致编译中断。
根据知识库中的记录,这是一个已经确认的bug,你可以查看这个ISSUE详情:新版HBuilderX编译插件内引用的是Frameworks第三方库时,报While building for Mac Catalyst错误。ISSUE中描述的问题现象与你的反馈完全一致。
临时解决方案与建议 在官方正式修复此问题前,你可以尝试以下临时方案:
方案一:使用传统自定义基座模式(推荐)
这是最稳定的方案。避免使用“保存后自动编译uts插件”的开发模式,转而采用传统的云打包自定义基座方式。

当你需要修改uts插件代码后,不要直接运行或保存触发自动编译。
修改完代码后,直接提交云端打包,生成新的自定义基座。
使用新生成的自定义基座进行调试。

这种方式绕过了本地uts插件的编译流程,因此不会触发Mac Catalyst的编译错误。
方案二:回退HBuilderX版本
如果方案一对你的开发效率影响较大,可以考虑暂时回退到上一个未出现此问题的HBuilderX版本。根据ISSUE反馈,这个问题是在较新版本中引入的。
总结 这是一个高质量的bug反馈,你不仅准确地描述了问题,还深入分析了根本原因,对我们非常有帮助。该问题已作为已知bug被记录,请关注后续的版本更新修复。在此之前,建议使用云打包自定义基座的方式进行开发和调试。 内容为 AI 生成,仅供参考

更多关于编译uni-app UTS插件内引用的是Frameworks第三方库时,报While building for Mac Catalyst错误的实战教程也可以访问 https://www.itying.com/category-93-b0.html


5.07的上一个正式发布版本是哪个版本

回到顶部