Xcode 10在安装Carthage依赖项时无法找到适用于iOS的任何可用模拟器

问题描述 投票:25回答:8

我正试图在我的Xcode项目中安装Carthage依赖项

Carthage bootstrap --platform iOS 

命令行,但它失败了,我的终端有这条消息:

Could not find any available simulators for iOS

我刚刚用10版本更新了Xcode,然后已经安装了模拟器。

我也试图删除每一个并重新安装iOS 12。

我还有同样的错误。

xcode ios-simulator carthage
8个回答
23
投票

对我有用的是卸载迦太基并重新安装它。

brew uninstall carthage --force
brew install carthage

15
投票

升级到v0.31.1或v0.31.2修复了它:

brew update && brew upgrade carthage

3
投票

安装Xcode 10.1之后,即使使用Carthage 0.31.2也遇到了麻烦。但我也习惯在安装Xcode主要版本时删除所有模拟器。为iOS 12.1添加模拟器修复了一些问题。


3
投票

当一个新的xcode版本出现时,它往往会发生。如果安装了Brew,您可以尝试使用brew upgrade carthage更新Carthage


3
投票

只需升级你的迦太基。

如其他答案所示,其背后的原因是指示模拟器模型可用性的关键字在最近更新到Xcode 10.x时发生了变化。它是

"availability" : "(available)",

现在是

"isAvailable" : true,

将迦太基升级到0.33.0就可以解决这个问题。

使用brew,输入以下内容以更新Carthage

brew upgrade carthage

请注意,这个词是升级,而不是更新。

检查迦太基的版本

brew list --versions carthage

carthage 0.33.0

在项目根目录的终端中,输入此内容以重建您的Carthage依赖项。

carthage bootstrap --platform iOS

他们都应按预期建造。

您可以通过此命令检查可用模拟器的数据格式。

xcrun simctl list devices --json


2
投票

试着跑

sudo brew安装 - HEAD carthage

从Xcode 10.1 beta开始,xcrun simctl list devices --json的结构发生了变化。

之前

{
  "devices" : {
    "iOS 12.0" : [
      {
        "state" : "Shutdown",
        "availability" : "(available)",
        "name" : "iPhone 5s",
        "udid" : "A52BF797-F6F8-47F1-B559-68B66B553B23"
      }
  ]
}

{
  "devices" : {
    "iOS 12.0" : [
      {
        "state" : "Shutdown",
        "isAvailable" : "YES",
        "name" : "iPhone 5s",
        "udid" : "A52BF797-F6F8-47F1-B559-68B66B553B23"
      }
  ]
}

由于此更改,Xcode 10.1上的解析失败。


0
投票

卸载并安装Carthage技巧对我有用!

brew uninstall carthage —force

Screenshot

brew install carthage

0
投票

就我而言,它已经解决了。

  1. 关闭xcode
  2. rm -rf ~/Library/Developer/CoreSimulator/Devices/
  3. 打开xcode
  4. 创建新项目
  5. 在任何模拟器上运行空项目
  6. 执行carthage update
© www.soinside.com 2019 - 2024. All rights reserved.