运行ning cordova 运行 android 时如何修复只读文件系统?

How to fix Read-only file system when running cordova run android?

我正在尝试执行

cordova run android --verbose

然后我得到

spawn EACCES

作为一个错误。

所以,我在网上搜索 运行

cordova run android --verbose

并确定错误为:

Running command: /snap/android-studio/76/android-studio/gradle/gradle-5.1.1/bin/gradle -p /home/extensify/Desktop/Code/cordova/platforms/android wrapper -b /home/extensify/Desktop/Code/cordova/platforms/android/wrapper.gradle
spawn EACCES
Error: spawn EACCES
    at _errnoException (util.js:1022:11)
    at ChildProcess.spawn (internal/child_process.js:323:11)
    at Object.exports.spawn (child_process.js:502:9)
    at Function.spawn (/home/extensify/Desktop/Code/cordova/node_modules/cross-spawn/index.js:12:24)
    at exports.spawn (/home/extensify/Desktop/Code/cordova/node_modules/cordova-common/src/superspawn.js:90:28)
    at ProjectBuilder.runGradleWrapper (/home/extensify/Desktop/Code/cordova/platforms/android/cordova/lib/builders/ProjectBuilder.js:70:20)
    at /home/extensify/Desktop/Code/cordova/platforms/android/cordova/lib/builders/ProjectBuilder.js:209:29
    at _fulfilled (/home/extensify/Desktop/Code/cordova/node_modules/q/q.js:854:54)
    at self.promiseDispatch.done (/home/extensify/Desktop/Code/cordova/node_modules/q/q.js:883:30)
    at Promise.promise.promiseDispatch (/home/extensify/Desktop/Code/cordova/node_modules/q/q.js:816:13)

我读到的内容可以通过更改文件的权限来修复 /snap/android-studio/76/android-studio/gradle/gradle-5.1.1/bin/gradle

为了解决这个问题,我尝试了 运行

sudo chmod +x /snap/android-studio/76/android-studio/gradle/gradle-5.1.1/bin/gradle

并不断得到

chmod: changing permissions of '/snap/android-studio/76/android-studio/gradle/gradle-5.1.1/bin/gradle': Read-only file system

我读到的可以通过重新安装我的硬盘驱动器来修复,我再次尝试使用几个命令,但无法修复。

接下来我可以尝试什么?

此答案适用于 Ubuntu 18.04

我遇到了同样的问题,下面是我如何解决它们的:

  1. 如果您使用 snap 安装,请删除 Android Studio。
  2. Download Android Studio 来自他们的网站
  3. 为您的用户配置文件提取到 /usr/local/,或为共享用户提取到 /opt/
  4. 如果您使用的是 64 位机器,运行 此命令用于安装一些必需的 32 位软件包:
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386
  1. 安装KVM,加入群组kvm
  2. 打开一个终端,导航到android-studio/bin/目录,然后执行./studio.sh
  3. 运行 通过安装并确保在 SDK 平台
  4. 中安装 API Level 28 (Android 9.0 Pie)
  5. 将以下目录添加到 $PATH
    • /opt/android-studio/gradle/gradle-{version}/bin/usr/local/android-studio/gradle/gradle-{version}/bin
    • /opt/android-studio/jre/bin/usr/local/android-studio/jre/bin
    • /home/{name}/Android/Sdk/platform-tools
    • /home/{name}/Android/Sdk/tools/bin
    • /home/{name}/Android/Sdk/emulator/bin
  6. 使用 Android Studio
  7. 创建虚拟设备
  8. 使用 android list avd
  9. 列出虚拟设备
  10. 使用emulator -avd {deviceName}
  11. 启动虚拟设备
  12. 运行 cordova run android,应该可以

推荐:

  • 运行 Android Studio,转到 Tools > Create Desktop Entry... 以便您可以轻松启动 Android Studio