spawnSync ./gradlew在模拟器上运行react本机项目时出现EACCES错误

lztngnrs  于 2022-11-14  发布在  React
关注(0)|答案(8)|浏览(261)

我正在尝试使用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。它仍然给我完全相同的错误。请帮助。

9udxz4iz

9udxz4iz1#

我修复了以下问题:

chmod 755 android/gradlew

chmod命令设置文件或目录的权限。https://www.computerhope.com/unix/uchmod.htm

7fhtutme

7fhtutme2#

我认为是权限问题我以前遇到过这个问题,您可以通过更改权限来解决它,运行以下命令

chmod 755 android/gradlew
6za6bjd0

6za6bjd03#

对Mac来说,这对我很有效:
sudo chmod 755 android/gradlew

rsl1atfo

rsl1atfo4#

我尝试了上面的解决方案。但是在我的例子中,由于权限问题,我不得不使用sudo。您可以通过运行以下命令来解决它
sudo chmod 755 android/gradlew

kgsdhlau

kgsdhlau5#

结果是它不是gradle,而是android/gradlew。在根目录中运行以下命令:

$ chmod +x android/gradlew

现在跑吧

$ yarn android            
# OR   
$ npm run android 
# OR
$ npx eact-native run-android

你应该可以走了。

n3ipq98p

n3ipq98p6#

在@Jinkey的第一个批准的答案上,如果你想知道在哪里运行这个命令,就像我在Mac上的情况一样,请按照以下步骤操作:
1.在您的终端中导航到项目文件夹cd <project folder>,确保项目路径正确。
1.然后,在文件夹中按原样复制和粘贴chmod 755 android/gradlew来运行命令

7uzetpgm

7uzetpgm7#

在MacBook Air M1芯片上,chmod 755 android/gradlew工作得很好。还可以在android/local.properties文件中添加下面的行。

sdk.dir = /Users/YourUserNAME/Library/Android/sdk
wvt8vs2t

wvt8vs2t8#

sudo chmod 755 android/gradlew在mac中对于这个问题工作得非常好!

相关问题