我正在尝试使用 GitHub Actions 为 MacOS 桌面构建 Flutter 应用程序。但我得到以下错误输出:
.../build/macos/Build/Intermediates.noindex/Runner.build/Release/Runner.build/Script-3399D490228B24CF009A79C7.sh: line 3:
.../macos/../.fvm/flutter_sdk/packages/flutter_tools/bin/macos_assemble.sh: No such file or directory
它与我在本地使用的fvm有关,但在 GitHub Actions 上却没有。
所以我查看了“Script-3399D490228B24CF009A79C7.sh”,这显然是一个生成的文件。 其内容是:
#!/bin/sh
export FLUTTER_ROOT="$PROJECT_DIR/../.fvm/flutter_sdk"
echo "$PRODUCT_NAME.app" > "$PROJECT_DIR"/Flutter/ephemeral/.app_filename && "$FLUTTER_ROOT"/packages/flutter_tools/bin/macos_assemble.sh embed
我如何控制如何生成此文件,尤其是
FLUTTER_ROOT
变量。
我尝试在不使用 fvm 的情况下配置本地设置,它构建得很好,但不在 GitHub Actions 上。
我的
FLUTTER_ROOT
在 Xcode 构建设置中定义,其值为 /Users/.../dev/flutter
,因此那里没有 .fvm
。
我在我的项目中搜索了
FLUTTER_ROOT
,发现macos/Runner.xcodeproj/project.pbxproj
中有一行内容是:
shellScript = "export FLUTTER_ROOT=\"$PROJECT_DIR/../.fvm/flutter_sdk\"\n ... "
我只是将其删除,一切正常。