Xcode 构建因并发构建失败,将在 Flutter 中重试 2 秒

Posted

技术标签:

【中文标题】Xcode 构建因并发构建失败,将在 Flutter 中重试 2 秒【英文标题】:Xcode build failed due to concurrent builds, will retry in 2 seconds in Flutter 【发布时间】:2021-04-26 20:24:00 【问题描述】:

我正在尝试使用 iPhone 和模拟器运行我的应用程序。但是,该应用程序仅在一台设备上启动,当我尝试在另一台设备上运行该应用程序时,他们给出了错误:

有解决办法吗?它对开发至关重要......对我们来说最重要的功能。我们不能同时测试用户交互性或 UI 缩放,这真的很糟糕。

这是我尝试在 android Studio 中运行应用时收到的错误。

Launching lib/main.dart on my’s iPhone in debug mode...
Signing ios app for device deployment using developer identity: "Apple Development: test (AMNDNA32NX)"
Running Xcode build...
Xcode build failed due to concurrent builds, will retry in 2 seconds.
Xcode build failed due to concurrent builds, will retry in 4 seconds.
Xcode build failed due to concurrent builds, will retry in 8 seconds.
Xcode build failed due to concurrent builds, will retry in 16 seconds.
Xcode build failed due to concurrent builds, will retry in 32 seconds.

这是我的颤振医生

mac@my-iMac Flutter_myapp % flutter doctor -v
[✓] Flutter (Channel stable, 1.22.5, on Mac OS X 10.15.7 19H2 darwin-x64, locale en-GB)
    • Flutter version 1.22.5 at /Users/mac/Development/flutter
    • Framework revision 7891006299 (6 weeks ago), 2020-12-10 11:54:40 -0800
    • Engine revision ae90085a84
    • Dart version 2.10.4

 
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/mac/Library/Android/sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0, Build version 12A7209
    • CocoaPods version 1.10.0

[!] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] Connected device (2 available)
    • SM M307F (mobile)        • RZ8MB2YKPDV                              • android-arm64 • Android 10 (API 29)
    • Paresh’s iPhone (mobile) • 49f62dac6f1da634e5d71981db4d591dc9126e4b • ios           • iOS 13.3

! Doctor found issues in 1 category.

在真实设备和模拟器上构建时似乎确实会出现此问题。在 iPhone iOS 14.3 和 iPhone 8 Simulator 中尝试过并得到同样的错误,但一次不会发生在一台设备上

有人找到它的解决方案吗? 不能在多个ios模拟器上运行真的很烦人。

【问题讨论】:

【参考方案1】:

当底层 build.db 被一些终止的 xcodebuild 进程锁定时,这是一个相对常见的 Xcode 问题,它发生在许多非 Flutter Xcode 项目中。我找到了一些解决方案,这是他们的一些方法

    从 Mac 活动监视器应用程序中退出 XCBuildService,然后重试

    在构建 iOS 时退出 Xcode 应用程序或尝试关闭 Xcode/Android Studio/VS Code

    直接运行flutter run -d all --verbose 命令

    试试$ flutter clean

    通常删除 DerivedData 会修复它。

    ~/Library/Developer/Xcode/DerivedData
    

    DerivedData 是所有中间对象文件、缓存模块、代码索引、日志等所在的位置。如果我们从不同的派生数据目录运行每个构建,所有内容都将在每个构建上重新缓存,我预计这是一个相当严峻的性能代价。

【讨论】:

以上是关于Xcode 构建因并发构建失败,将在 Flutter 中重试 2 秒的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 7 命令因信号而失败:非法指令 4

颤振和 Xcode 构建问题

Xcode swift 2.2 命令因信号而失败:杀死:9

构建失败并出现异常 - 颤动

xcode 使用 iOS 10 设备构建项目,但启动时崩溃:来自调试器的消息:因内存问题而终止

Jenkins 构建会因覆盖率下降而失败吗?