删除Mac目标平台后Xcode 14.2导出本地化功能异常问题
Xcode 14.2 删除Mac目标后SwiftUI本地化导出失效问题
问题详情
- 在Xcode 14.2 (14C18)中创建仅含单个视图的SwiftUI简单应用,初始状态下「Export Localisations」功能正常。
- 删除Mac作为支持目标后,修改代码中的
Text("Hello World")为Text("Goodbye world"),执行导出本地化操作无报错,但本地化内容未同步更新。 - 清理构建文件夹后,原有的“Hello World”文本也完全无法被导出。
- 已确认项目中「Use compiler to extract swift strings」和「Localised String SwiftUI Support」两项设置均为
YES。 - 项目删除Mac目标前的倒数第二个提交可正常导出本地化,最新提交则无法正常工作。
涉及代码片段
Text("Hello World xxxx")
排查与修复步骤
- 检查剩余目标(如iOS)的
Info.plist文件,确认本地化语言列表未因删除Mac目标被误修改,确保需要的语言已正确配置。 - 先执行一次完整构建(快捷键
Cmd+B),再重新尝试导出本地化操作——编译器需要重新生成字符串索引才能识别代码中的文本变更。 - 核对项目内的
.strings文件,确保它们的「Target Membership」勾选了当前保留的目标,避免仅绑定了已删除的Mac目标。 - 彻底清理Xcode缓存:除了通过Xcode菜单清理构建文件夹,还可手动删除
~/Library/Developer/Xcode/DerivedData目录下对应项目的缓存文件夹,重启Xcode后重试导出。 - 再次确认目标的Build Settings:检查
Use compiler to extract swift strings和Localised String SwiftUI Support是否确实为YES,删除目标可能导致配置继承出现异常,需手动确认。
内容的提问来源于stack exchange,提问作者Yezhou Li
相关产品推荐
相关产品推荐

