1

今日、アプリで奇妙なエラーが発生しました。これは次のようなものです

FileSystemException: FileSystemException: Getting current working directory failed, path = '' (OS Error: Too many open files in system, errno = 23)

私のアプリには膨大な数のアセットがありますが、それがこの問題の原因でしょうか?

これは、2 つの別個の問題のように感じます。1 つは、Mac で package:test コードを保持していて、一度にあまりにも多くのテストを実行しようとしていることです。

フラッタードクター

[✓] 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 (4 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
    ! No devices available

! Doctor found issues in 2 categories.

macOS で開いているファイルの制限を変更する方法

4

1 に答える 1

2

一度に開くことができるファイルの数に関する Mac OS のデフォルトの制限はかなり低いです。この制限に達した場合は、次のulimitコマンドを使用して使用可能なファイル ハンドラーの数を増やしてください。

ulimit -S -n 2048

テストに Travis または Cirrus を使用する場合は、同じ行を flutter/.travis.yml または flutter/.cirrus.yml にそれぞれ追加して、開くことができる使用可能なファイル ハンドラーの数を増やします。

于 2021-01-11T02:58:16.060 に答える