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

Dan*_*olt 170 macos xcode

是否可以同时安装多个版本的Xcode?

如果是这样,请发布任何提示,技巧或潜在问题,以备注意.

编辑:

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

Mat*_*ttK 93

是的,您可以安装多个版本的Xcode.它们将安装到单独的目录中.我发现最好的做法是首先安装Mac附带的版本,然后安装下载的版本,但它可能没有太大的区别.有关许多详细信息,请参阅此Apple Developer Connection页面.

  • 为了澄清,只有在安装时明确指定它们时,它们才会安装到单独的目录中.此外,您通常希望取消选择除xcode核心工具之外的所有功能,因为其他功能不允许您更改安装目录. (12认同)
  • 链接已过时.可以从[here](https://developer.apple.com/downloads/index.action)获取旧版本,但没有关于如何设置或安装它们的任何细节=(. (7认同)
  • 这个链接可以帮助你们:http://iosdevelopertips.com/xcode/install-multiple-versions-of-xcode.html (4认同)

Jim*_*des 42

安装多个Xcode很容易.

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

来自Apple开发工具传播者的这些说明包含完整的详细信息(需要Apple dev用户名/密码):https: //devforums.apple.com/message/40847#40847

然后抓住你自己使用的Beta版XCode的自定义图标,这样你就可以在Dock中区分它们:http: //iphonedevelopment.blogspot.com/2009/03/multiple-developer-tool-installs.html


Ran*_*man 35

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

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

场景:
您现在可能只安装了一个版本的XCode.大多数是最新的XCode版本背后的版本,可通过App Store获得(我的Xcode 6.3.2,我需要保留它并安装可通过App Store购买的Xcode 7).

对于Ex: -

您已经安装了XCode 6.x,App Store已经在App Store中提供了XCode 7.出于任何原因,你需要保留旧的XCode 6.x(因为你知道它已经稳定一段时间了)而且你需要安装并试用新的XCode 7

所以第一个问题可能是,可以下载的方式和位置适用于XCode 7的Mac OS X可安装DMG文件(或者如果你想尝试更旧的XCode版本,可能会这样)?好的,这是Apple下载的直接链接(您可能需要在正确查看此链接之前登录Apple Developer帐户),否则以下是StackOverflow Q&A链接,它提供了下载XCode IDE的DMG文件的位置的答案.

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

步骤:
按照上面给出的步骤,我从上面给出的Oracles移动平台博客的第一个链接.

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

注意*:

[请耐心阅读本节,直到下一个注意事项]当您安装了两个版本的Xcode时,您的工作站也安装了两个版本的Command Line Tool(xcodebuild).问题是在构建iOS App时,您的Terminal和Xcode构建命令将使用什么.因为与命令行工具一起,用于构建应用程序的iOS SDK也依赖于.

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

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

  • 选择Locations选项卡,然后您可以选择所有已安装的命令行工具版本(即xcodebuild).

如何确定用于构建iOS应用程序的iOS SDK版本?

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

注意**:
以上给出Apple下载链接和Oracles MPF博客帖子链接可能会在将来更改和/或不可用.

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

  • 谢谢!带有Xcode 8的Xcode 7.3.1为我工作. (2认同)

小智 32

您可能希望在终端中使用"xcode-select"命令在已安装文件夹中的不同Xcode版本之间切换.

  • 这帮助我运行`sudo xcode-select -s/Applications/Xcode-beta.app/Contents/Developer /`来使用xcode的beta版本.谢谢! (10认同)

Ash*_*lls 13

似乎Xcode真的喜欢在Applications文件夹中并被称为Xcode,特别是在使用时xcodebuild(例如在为Carthage构建时) - 而且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
Run Code Online (Sandbox Code Playgroud)

  • 使用来自特定 Xcode 版本的 `xcodebuild` 不需要对默认 Xcode 版本进行系统范围的更改。在使用 `xcodebuild` 之前设置 DEVELOPER_DIR 环境变量就足够了:`export DEVELOPER_DIR="/Applications/Xcode-9.3.app/Contents/Developer"`。 (2认同)

Tho*_*asW 12

请注意,如果使用xcodebuild命令行工具,则安装的Xcode的最新版本将成为默认版本.(符号链接安装在/ usr/bin中.)要使用xcodebuild其他版本的Xcode,您需要使用(xcode_install_directory)/usr/bin目录中的版本.

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


cse*_*der 8

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

自动安装和更新您的 Xcode。

您可以使用Xcode::Install Ruby Gem极大地简化此过程 。

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

我建议使用Homebrew安装 rbenv并使用rbenv安装 Ruby。可以在此处和许多其他地方找到有关此的指南。

但是,如果您在安装gem 时使用sudo(不推荐)或使用 --user-install 安装 gem,它也应该与较新的 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

Run Code Online (Sandbox Code Playgroud)

这应该下载并安装并激活该版本的 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

Run Code Online (Sandbox Code Playgroud)

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

Xcode::Install 也可以通过调用安装 Xcode 的命令行工具

xcversion install-cli-tools 并且还可以使用该simulators命令管理您的本地模拟器。

但是,与其重复可能会随着时间变化的更多信息,不如前往项目的GitHub 页面 了解有关此 gem 的更多信息。