我正在尝试从命令行更新Xcode。一开始我试着跑步:

 xcode-select --install

这就产生了这条信息:

xcode-select: error: command line tools are already installed, use "Software Update" to install updates

那么问题来了,有没有办法从命令行更新Xcode呢?


当前回答

使用这一行程序进行更新。

softwareupdate --install -a

其他回答

@Vel Genov的回答是正确的,除非Xcode的版本无法更新,因为它是当前Mac OS的最新版本。如果你知道有更新的Xcode(例如,它不会将应用加载到最新版本的iOS设备上),那么有必要先升级Mac OS。


对于像我这样使用旧Mac Pro 5.1的人来说,还有一点值得注意。升级到Mojave需要安装金属gpu(蓝宝石AMD Radeon RX 560在我的情况下),但确保只安装HDMI监视器(不是4K!1080只)。然后才安装Mojave说固件更新需要关闭电脑。长2分钟的电源按钮保持,它都升级好之后!


如果有一个挂起的更新,install -a不会从命令行升级xcode(假设你选择了隔夜更新xcode)

我也遇到过同样的问题,我采取了以下方法:

删除旧的工具($ sudo rm -rf /Library/Developer/CommandLineTools) 重新安装xcode命令行工具($ xcode-select——Install)

完成这些步骤后,您将看到一个弹出窗口来安装新版本的工具。

这提醒了我为什么讨厌MacOS。每次我尝试这些错误之一,我都会得到一个无法理解的错误:无法请求安装(可能没有UI存在) 事实证明,这个“CLI”实际上需要一个图形会话才能运行。WTF !当你只通过SSH连接到远程mac服务器来排队iOS构建时,这非常有用。

所以我的答案是:

物理移动到Mac上,安装屏幕、鼠标和键盘,然后在那里运行命令。

我遇到了同样的问题,使用下面的命令解决了它。

sudo xcode-select -s /Library/Developer/CommandLineTools

运行上述命令后,xcode-select -p命令显示如下内容。

/图书馆/开发/ CommandLineTools

你实际使用的是安装Xcode命令行工具的命令Xcode -select——install。因此,您得到的错误消息-工具已经安装。

你需要更新Xcode的命令是softwareupdate command [args…]。你可以使用softwareupdate——list来查看可用的更新,然后使用softwareupdate——install -a来安装所有更新,或者使用softwareupdate——install <product name>来安装Xcode更新(如果可用)。您可以从list命令获取名称。

正如评论中提到的,这里是软件更新工具的手册页。

2019年更新

很多用户都遇到过这样的问题,softwareupdate——install -a实际上不会更新到最新版本的Xcode。造成这种情况的原因很可能是等待中的macOS更新(正如@brianlmerritt在下面指出的那样)。在大多数情况下,先更新macOS可以解决问题,同时也可以更新Xcode。

更新Xcode命令行工具

很大一部分用户是在尝试更新Xcode命令行工具时找到这个答案的。要实现这一点,最简单的方法是删除旧版本的工具,并安装新的工具。

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

将出现一个弹出窗口,并指导您完成其余的过程。