Flutter-FileSystemException:创建失败flutter_build,权限被拒绝

时间:2020-05-16 09:15:03

标签: android flutter dart

我正在尝试运行Flutter应用。以前效果很好,我不知道发生了什么,但是现在它无法启动。

当我尝试从Android Studio启动它时,我得到了:

Crash report sent (report ID: [crash id])
Oops; flutter has exited unexpectedly.
Crash report written to /home/my_project_path/flutter_07.log;
please let us know at https://github.com/flutter/flutter/issues.

当我尝试使用flutter run启动它时,我会得到同样的结果。

flutter doctor运行良好,并且没有错误:

[✓] Flutter (Channel stable, v1.12.13+hotfix.9, on Linux, locale fr_FR.UTF-8)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Android Studio (version 3.6)
[✓] Connected device (1 available)

• No issues found!

flutter_07.log中给出的主要例外是:

FileSystemException: FileSystemException: Cannot open file, path = '/home/revan/Programs/flutter/.pub-cache/hosted/pub.dartlang.org/async-2.4.0/pubspec.yaml' (OS Error: Permission denied, errno = 13)

我尝试进行sudo chmod 777 /home/revan/Programs/flutter/.pub-cache/hosted/pub.dartlang.org/async-2.4.0/pubspec.yaml似乎正常,因为当我重新运行flutter run时,它是pubspec.yaml中一个库中的另一个.pub_cache/hosted/pub.dartlang.org文件,缺少权限

我想我可以手动chmod pubspec.yaml sudo find **/pubspec.yaml -type f -exec chmod 644 {} \;来访问此目录中的所有341个库,但是这会花费很长时间,我想这不是正确的方法。

有什么主意吗?

编辑: 好的,所以我启动了以下命令:
FileSystemException: FileSystemException: Creation failed, path = 'my_project_path/.dart_tool/flutter_build' (OS Error: Permission denied, errno = 13)

它似乎可以正常工作,因为现在我还有另一个错误:

gulp style

1 个答案:

答案 0 :(得分:0)

因此,在阅读日志之后,我还遇到了有关ADB服务器未使用ADB客户端版本的错误。通过命令which adb,我发现我没有使用与${ANDROID_SDK_PATH}/platform-tools/adb中相同的adb。

我复制了${ANDROID_SDK_PATH}/platform-tools/adb /usr/bin/adb

然后将问题转换为Android SDK错误。 日志显示我使用了usr/lib/android-sdk/,但是以前使用的Android SDK位于~/Program中。我将/usr/lib/android-sdk/中的每个目录替换为~/Programsbuild-tools; licenses; platforms; platform-tools; {{1 }}。

现在它正在工作;但我知道我不应该像那样修复它。复制系统二进制文件目录中的文件有点脏而且很危险。

如果您有更好的想法,请随时为有此问题的其他人回答此问题。