我正在尝试使用react-native run-android在android studio模拟器上安装我的react-native应用程序。我已经用abd-devices检查了模拟器是否可用,并且我已经运行了npm-install。
我正在使用Ubuntu 18.04与最新版本的Android工作室,和最新的像素2 XL API 28.
出现以下错误:
产生同步/梯度EACCES
Error: spawnSync ./gradlew EACCES
at Object.spawnSync (internal/child_process.js:998:20)
at spawnSync (child_process.js:622:24)
at Object.execFileSync (child_process.js:650:13)
at runOnAllDevices (/home/user/react/front-end/project/node_modules /react-native/local-cli/runAndroid/runAndroid.js:299:19)
at buildAndRun (/home/user/react/front-end/project/node_modules/react-native/local-cli/runAndroid/runAndroid.js:135:12)
at isPackagerRunning.then.result (/home/user/react/front-end/project/node_modules/react-native/local-cli/runAndroid/runAndroid.js:65:12)
at processTicksAndRejections (internal/process/next_tick.js:81:5)
我已经试过几次重启我的电脑和模拟器了。有什么想法吗?
更新:我重新安装了JDK,npm,react-native-cli和android studio。它仍然给我完全相同的错误。请帮助。
8条答案
按热度按时间9udxz4iz1#
我修复了以下问题:
chmod命令设置文件或目录的权限。https://www.computerhope.com/unix/uchmod.htm
7fhtutme2#
我认为是权限问题我以前遇到过这个问题,您可以通过更改权限来解决它,运行以下命令
6za6bjd03#
对Mac来说,这对我很有效:
sudo chmod 755 android/gradlew
rsl1atfo4#
我尝试了上面的解决方案。但是在我的例子中,由于权限问题,我不得不使用sudo。您可以通过运行以下命令来解决它
sudo chmod 755 android/gradlew
kgsdhlau5#
结果是它不是
gradle
,而是android/gradlew
。在根目录中运行以下命令:现在跑吧
你应该可以走了。
n3ipq98p6#
在@Jinkey的第一个批准的答案上,如果你想知道在哪里运行这个命令,就像我在Mac上的情况一样,请按照以下步骤操作:
1.在您的终端中导航到项目文件夹
cd <project folder>
,确保项目路径正确。1.然后,在文件夹中按原样复制和粘贴
chmod 755 android/gradlew
来运行命令7uzetpgm7#
在MacBook Air M1芯片上,
chmod 755 android/gradlew
工作得很好。还可以在android/local.properties
文件中添加下面的行。wvt8vs2t8#
sudo chmod 755 android/gradlew
在mac中对于这个问题工作得非常好!