在模拟器中运行的 React Native 导致捆绑失败:权限被拒绝错误

Par*_*dox 1 linux android android-studio react-native manjaro

我刚刚react-native init在 Manjaro Linux 上创建了一个项目并使用 Android Studio 打开它。然后我react-native start在终端上运行,然后在现有模拟器上运行该应用程序,该模拟器打开一个红色屏幕,说明:

The development server returned response error code: 500
Metro Bundler has encountered an internal error, please check your terminal error output for more details
Run Code Online (Sandbox Code Playgroud)

在我的终端窗口上,它给了我以下错误:

error: bundling failed: Error: EACCES: permission denied, open '/tmp/metro-cache/52/45f310fea946062ca0c3c6122dec6592f224f34ee755285a39fd0922f1d4c6739388c3'
    at Object.openSync (fs.js:443:3)
    at Object.writeFileSync (fs.js:1163:35)
    at FileStore.set (/home/user/ReactNativeProjects/albums/node_modules/metro-cache/src/stores/FileStore.js:43:8)
    at Cache.set (/home/user/ReactNativeProjects/albums/node_modules/metro-cache/src/Cache.js:96:31)
    at /home/user/ReactNativeProjects/albums/node_modules/metro/src/Bundler.js:287:13
    at Generator.next (<anonymous>)
    at step (/home/user/ReactNativeProjects/albums/node_modules/metro/src/Bundler.js:11:657)
    at /home/us/ReactNativeProjects/albums/node_modules/metro/src/Bundler.js:11:817
    at process._tickCallback (internal/process/next_tick.js:68:7)
 BUNDLE  [android, dev] ./index.js ???????????????? 0.0% (0/1), failed.
Run Code Online (Sandbox Code Playgroud)

我检查了/tmp/metro-cache/52文件夹,但没有找到提到的文件。有谁知道可能导致此错误的原因是什么?请注意,当我在我的物理设备上运行它时$ react-native run-android,我得到了同样的错误。

Nur*_*cun 5

I solved the problem.

sudo chmod 777 /tmp/metro-cache
cd /tmp/metro-cache
sudo chown -R $USER .
Run Code Online (Sandbox Code Playgroud)

Actually, I am not sure which one is worked. Probably chown is enough.