我可以安装多个 Xcode 版本吗?

有没有可能同时安装多个版本的 Xcode?

如果是这样,请张贴任何提示,技巧,或潜在的问题要注意。

编辑:

我想安装多个版本的原因是想试试新的 sdk beta 版本,但是如果 Xcode 版本有问题,我希望能够在我现有的项目中使用旧版本。

117151 次浏览

是的,您可以安装多个版本的 Xcode。它们将安装到单独的目录中。我发现最好的做法是先安装 Mac 自带的版本,然后再安装下载的版本,但这可能没有太大区别。参见 这个苹果开发者连接页面提供了大量的详细 http://Developer.Apple.com/documentation/xcode/conceptual/xcodecoexistence/contents/resources/en.lproj/details/details.html。

安装多个 Xcode 很容易。

在安装程序中有一个位置的下拉菜单... 你只需要在安装测试版时选择一个新的位置。

这些来自苹果开发工具传道者的说明包含了完整的细节(苹果开发用户名/密码要求) : Https://devforums.apple.com/message/40847#40847

然后为你正在使用的 XCode Beta 版本找一个自定义图标,这样你就可以在被告席上区分它们: Http://iphonedevelopment.blogspot.com/2009/03/multiple-developer-tool-installs.html

请注意,如果您使用 xcodebuild命令行工具,那么安装的 Xcode 的最后版本将成为默认版本。(在/usr/bin 中安装了一个符号链接。)要将 xcodebuild用于其他版本的 Xcode,您需要在 (xcode_install_directory)/usr/bin目录中使用该版本。

Note 要在 Xcode 命令行工具的不同版本之间切换,请使用其他评论者提到的 xcode-select工具。

您可能希望在终端中使用“ Xcode-select”命令在安装的文件夹中的不同 Xcode 版本之间进行切换。

要安装多个 Xcode 实例,您可以将它们放到不同的文件夹中,例如/Developer5.0.2/Xcode,但是要在 CI 或构建环境(命令行)中使用它们,您需要在构建期间设置一些环境变量。 你可以有更多的指示 给你。 因此,它不仅可以用于 beta 版本和最新版本,还可以用于真正的老版本,你可能需要它与 Marmalade 或 Unity 插件一起使用,这些插件还不支持最新的 Xcode 版本(有时这种情况会发生)。

我可以安装多个 Xcode 版本吗?

解决方案:
实际上,正如上述许多答案所说,这是有可能的。 即使根据下面的 Oracle 移动平台博客,您也可以在同一台 Mac 上安装多个 XCodes。你需要这样做的原因可能因你而异。

场景:
目前您可能只安装了一个版本的 XCode。主要是最新的 XCode 版本后面的一个版本,可以通过 App Store 获得(我的版本是 XCode 6.3.2,我需要保留它,并且还要安装可以通过 App Store 获得的 XCode 7)。< br/> < br/> 前:-

您已经安装了 XCode 6.x,并且 App Store 已经安装了 XCode 7 应用程序商店已经提供。出于任何原因,你需要保持旧的 XCode 6.x (正如您所知,它已经稳定了一段时间了) ,您也可以使用它 需要安装并尝试新的 XCode 7 < br/> < br/> 因此,第一个问题可能是,如何和在哪里能否下载用于 XCode 7的 Mac OS X 可安装 DMG 文件(或者如果您想尝试一个较老的 XCode 版本,也可能是 如何和在哪里) ?好的,这里是直接的 链接苹果下载(在正确查看这个链接之前,您可能必须登录到 Apple Developer 帐户) ,否则下面是一个 StackOverflow 问与答链接,它提供了在哪里下载 XCodeIDE 的 DMG 文件的答案

那么现在让我们假设您已经获得了需要作为次要安装的 XCode 版本的任何 DMG 文件?

步骤:
按照下面给出的步骤,我从上面给出的第一个链接的甲骨文移动平台博客。

  1. 运行时关闭 Xcode
  2. /Applications/Xcode.app重命名为 /Applications/Xcode_6.x.app
  3. 提示时输入管理员密码
  4. 双击所需的、预先下载的 Xcode 的 DMG 文件并安装它
  5. 安装后,在运行它之前,更改新的 刚刚安装到(根据我上面给出的例子) /Application/Xcode_7.app/Applications/Xcode.app

注 * :

[请耐心阅读本节直到下一个注释] 当你安装了两个版本的 Xcode 时,你的工作站也安装了两个版本的命令行工具(xcodebuild)。问题是,在构建 iOS 应用程序时,终端和 Xcode 构建命令将使用什么。因为除了命令行工具,用于构建应用程序的 iOS SDK 也依赖于。

我的经验是我有两个 Xcode 版本。Xcode 10(旧版 iOS 12.0-iphoneos12.0)和 Xcode 10.1(新版 iOS 12.1-iphoneos12.1)。所以很明显,命令行工具的设置被选中来使用旧应用程序中的 xcodebuild工具。我不得不在 Xcode 首选项窗口中手动选择它。

在 Xcode 首选项窗口的哪里设置命令行工具?

  • 选择 Locations选项卡,在那里,您可以选择命令行工具的所有安装版本(即 xcodebuild)。

如何找出哪个版本的 iOS SDK 正在被用来构建您的 iOS 应用程序?

  • 在你的终端问题下面的命令: $> xcodebuild -showsdks
  • 上面的命令应该打印出当前 Xcode 配置用于构建应用程序的所有 SDK 详细信息。通过查看结果,您将了解您的 iOS/iphoneos SDK 版本依赖于更改 Xcode 上的命令行工具(xcodebuild)设置。

注 * * :
以上给出的苹果下载链接和甲骨文强积金博客链接可能会改变和/或无法在未来。

所以我希望我的这个答案可能对其他人有所帮助!
干杯!

似乎 Xcode 真的很喜欢放在 Applications 文件夹中,并被称为 Xcode,特别是在使用 xcodebuild时(例如,在为迦太基构建时)——而且 xcode-select似乎并不总是切断它。

我有一个客户端项目,仍然使用 Swift 2.2,我卡在 Xcode 7为此和使用 Xcode 8为其他任何东西。

因此,在我的 Applications 文件夹中,我有 Xcode 7(重命名为 Xcode _ 7)和 Xcode 8(重命名为 Xcode _ 8)。然后,我重命名哪一个我需要简单的 Xcode,并在完成后再次回来。有点蛋疼,但似乎有效。

这个 shell 脚本将其简化了一些..。

xcode-version.sh

cd /Applications


if  [[ $1 = "-8" ]]
then
if [ -e Xcode_8.app ]
then
mv Xcode.app Xcode_7.app
mv Xcode_8.app Xcode.app
echo "Switched to Xcode 8"
else
echo "Already using Xcode 8"
fi
elif  [[ $1 = "-7" ]]
then
if [ -e Xcode_7.app ]
then
mv Xcode.app Xcode_8.app
mv Xcode_7.app Xcode.app
echo "Switched to Xcode 7"
else
echo "Already using Xcode 7"
fi
else
echo "usage: xcode-version -7/8"
fi


xcode-select --switch Xcode.app
  1. 首先,从计算机中删除当前的 Xcode 安装。你可以跳过这一步,但我想重新开始。另外,Xcode 最近的行为有点奇怪,所以这是一个很好的机会。
  2. 从 App Store 安装 Xcode 8。确保可以使用新的 Xcode 安装打开项目文件(. xcodeproj)和工作区文件(.xcworkspace)(记住每当提示时选择 Later 选项)。
  3. 从 Apple 下载 Xcode 7.3.1 dmg 文件。双击新下载的 dmg 文件,以获得标准的“拖动以在应用程序文件夹中安装 Xcode”。别这样。相反,将 Xcode 图标拖到桌面上。将文件名更改为 Xcode 7.3.1。现在将其拖动到 Applications 文件夹。

现在您的机器上已经安装了两个版本的 Xcode。

详情: 并排安装 Xcode 7和 Xcode 8

无论采用什么样的通知路径,请复制项目文件夹,并重命名外部最大文件夹,以反映打开它的 XCode 版本。 你可以选择是否要更新语法,但是这一切的主要原因是你的故事板将被改变只是通过寻找。这个问题可以在将来新读者遇到这个问题的时候解决,或者

如果您已经从 appstore 安装了新版本的 xcode,那么 appstore 中将提供所有新版本的更新。如果你只是粘贴下载的版本,appstore 会显示安装而不是更新。因此,将从 appstore 下载的稳定版保存在应用程序文件夹中。

要尝试新的 beta 版本,我通常把它放在单独的驱动器,解压并安装在那里。这将在处理稳定版本时避免混淆。

为了避免混淆,你可以只保留稳定的版本在你的底座上,然后在聚光灯下打开测试版(Command + Space)。这将使贝塔系统暂时停靠在码头上。但它将确保您不会意外地编辑您的客户端项目的 beta 版本。

最重要的:-在两个不同的 xcode 上处理同一个项目可能会产生一些不想要的结果。就好像某个版本的 xcode 引入了 Interface Builder 错误一样。这打破了约束。下一次又修好了。

跟踪发布说明,以确切了解哪些是附加特性,哪些是已知的问题。

Xcode 9开始,beta Xcode 被标记为“ Xcode-beta”。应用程序’,并设计成与生产版本并存。信息可以在 Xcode 释放通知书 给你中找到。(不使用直接链接,因为它经常中断)。

来自苹果:

Xcode 9 beta 4可以与以前版本的 Xcode 共存 Xcode 的版本可以从 developer.apple.com 中获得, 打包在压缩的 XIP 文件中。在测试期间安装 Xcode 期间,下载 XIP 文件,双击该文件以展开它 然后将 Xcode-beta. app 拖动到 Applications 文件夹

使用 gem Xcode: : Install 的 Xcode 和模拟器的多个版本

自动安装和更新 Xcode。

方法可以极大地简化此过程 Xcode: : Install Ruby Gem.

您应该已经安装了 Xcode 命令行工具 露比 支持构建本机扩展的的一个版本。

我建议使用 自酿的进行安装 并使用 Rbenv安装 Ruby。 这方面的指南可以在 给你和许多其他地方找到。

但是如果您使用 sudo安装 宝石(不推荐)或者在安装 gem 时使用—— user-install,那么它也可以与新版本的 macOS 提供的常规 Ruby 一起使用。

安装

基本上:

# Install the Ruby Gem (I'm using rbenv, so no sudo or --user-install)
$ gem install xcode-install


# To list available versions:
# PS!You will get prompted for your Apple Developer / iCloud credentials)
# It's using Apple's own API's so 2FA are supported if enabled


$ xcversion list
6.0.1
6.1
6.1.1
6.2 (installed)
6.3
# To update the list of available versions, run:
$ xcversion update


# To install a certain version, simply:
$ xcversion install 8


##################################################################### 100.0%
Please authenticate for Xcode installation...


Xcode 8
Build version 6D570


这应该下载并安装和激活该版本的 Xcode。 您可以像往常一样从/Applications 开始。

新版本也将自动为 CLI 命令选择 要选择其他版本作为活动版本,您将运行:

xcversion select <version_number>

从安装的版本列表中,标记为 (installed),如:

# To see the active version in use:
$ xcversion selected


# To select and activate an installed version:
$ xcversion select 8


# To select, activate and change the symlink in /Apllications
$ xcversion select 8 --symlink


其他有趣的东西,模拟器等

Install 还可以通过调用

xcversion install-cli-tools 也可以使用 simulators命令管理本地模拟器。

但是,与其重复更多可能随着时间推移而改变的信息,不如直接访问该项目的 < a href = “ https://GitHub.com/xcpretty/xcode-install # Simulators”rel = “ nofollow noReferrer”> GitHub 页面 更多关于这颗宝石的信息。

下载一个版本

Beta 版和稳定版可以从 Developer Software downloads Application 选项卡 给你获取,但是旧版本可以从 给你获取。只需提取 .xib并将 Xcode-beta.app放在您的应用程序文件夹中。

换个版本

  • 使用 贝塔: sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer
  • 使用 原创的: sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

检查版本更改

您可以通过运行 xed --version来验证版本已经更改,并且它将输出正确的版本: 例如 xed version 12.5xed version 13.0