Xcode归档版本号异常:显示1.0(1)与设置不符求助
解决Xcode 14.2 watchOS应用归档版本与设置不符的问题
以下是针对该问题的可行解决思路,专门适配Xcode 14.2的版本号同步bug:
强制锁定项目级版本变量
打开项目文件(.xcodeproj)右键选择「显示包内容」,编辑project.pbxproj文件:- 搜索
CURRENT_PROJECT_VERSION和MARKETING_VERSION,将所有target(主app及Intents Extension)对应的这两个值替换为你需要的硬编码数值(比如把$(CURRENT_PROJECT_VERSION)改成8,$(MARKETING_VERSION)改成1.0) - 保存后重新打开Xcode,检查Info标签页是否还会自动变回变量引用
- 搜索
检查Build Settings的版本参数继承关系
在target的Build Settings中切换到「All」「Combined」视图,找到Versioning分组:- 确认
Current Project Version和Marketing Version设置为不继承项目值,直接填写目标数值 - 查看针对Release归档的配置是否单独设置了版本号,避免归档时使用错误配置
- 确认
直接修改Info.plist源码
找到watchOS主target和Intents Extension的Info.plist文件,右键选择「Open As -> Source Code」:- 手动添加或修改以下字段:
<key>CFBundleShortVersionString</key> <string>1.0</string> <key>CFBundleVersion</key> <string>8</string> - 保存后不要通过Xcode的Info标签页修改,保持源码编辑后的状态,防止Xcode自动替换为变量引用
- 手动添加或修改以下字段:
深层清理Xcode缓存
除了常规的清理构建文件夹(Cmd+Shift+K),执行以下操作:- 删除DerivedData文件夹:通过Xcode偏好设置->Locations找到路径,手动删除整个文件夹
- 清空Xcode缓存:在终端执行
rm -rf ~/Library/Caches/com.apple.dt.Xcode - 重启Xcode后重新尝试归档
验证归档构建配置
归档前确认:- 选择的构建配置是Release(通过Product->Scheme->Edit Scheme,查看Archive阶段的Build Configuration)
- 该配置下的版本号参数与目标设置一致
临时规避Xcode 14.2 bug
如果以上方法均无效:- 尝试创建新的watchOS target,迁移现有代码后重新配置版本号再归档
- 降级到Xcode 14.1版本进行归档,该版本无此版本号同步问题
内容的提问来源于stack exchange,提问作者user709029
相关产品推荐
相关产品推荐

