由于这个问题原则上和去年的问题是一样的,当我们想在macOS Monterey上运行Xcode 12时,值得检查last year's question on the same problem。在那里,我发现this great answer中有一个脚本,建议只需要运行一次就可以修复这个问题(允许常规地打开Xcode13,例如通过双击)。脚本通过将旧Xcode13的构建版本改变为新Xcode14的构建版本来工作,从而欺骗OS。 在运行脚本之前,您需要将OLD_XCODE和NEW_XCODE变量更改为正确的路径。
#!/bin/sh
set -euo pipefail
# Set the paths to your Old/New Xcodes
OLD_XCODE="/Applications/Xcode-13.4.1.app"
NEW_XCODE="/Applications/Xcode-14.1.0.app" # To get build number
# Get New Xcode build number
OLD_XCODE_BUILD=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" ${OLD_XCODE}/Contents/Info.plist)
NEW_XCODE_BUILD=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" ${NEW_XCODE}/Contents/Info.plist)
echo The Old Xcode build version is $OLD_XCODE_BUILD
echo The New Xcode build version is $NEW_XCODE_BUILD
# Change Old Xcode build version to New Xcode
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion ${NEW_XCODE_BUILD}" ${OLD_XCODE}/Contents/Info.plist
# Open Old Xcode (system will check build version and cache it)
open $OLD_XCODE
# Revert Old's Xcode's build version
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion ${OLD_XCODE_BUILD}" ${OLD_XCODE}/Contents/Info.plist
2条答案
按热度按时间utugiqy61#
Xcode 14是macOS Ventura所必需的,但如果您想使用旧版本的Xcode(例如Xcode 13),您可以直接从Finder或终端启动它。
要在finder中打开,请导航到:
Applications Folder
〉查找Xcode App
〉右键单击应用程序,然后单击Show Package Contents
〉打开Contents
〉打开MacOS
〉并启动Xcode
。在终端中运行以下命令:
open /Applications/Xcode.app/Contents/MacOS/Xcode
.9rnv2umw2#
修复问题的单次运行脚本
由于这个问题原则上和去年的问题是一样的,当我们想在macOS Monterey上运行Xcode 12时,值得检查last year's question on the same problem。在那里,我发现this great answer中有一个脚本,建议只需要运行一次就可以修复这个问题(允许常规地打开Xcode13,例如通过双击)。脚本通过将旧Xcode13的构建版本改变为新Xcode14的构建版本来工作,从而欺骗OS。
在运行脚本之前,您需要将
OLD_XCODE
和NEW_XCODE
变量更改为正确的路径。