我正在开发一个 dockerized react-native 应用。
做一些简单的事情,比如启动打包器和构建项目是非常耗时的。像小时+一样思考。此外,仅运行最终执行 docker-compose up
的 react-native start
是超级错误的,并且无法预测允许模拟器连接到捆绑器。
例如,我尝试导航到应用目录并运行基本命令 react-native start
和 react-native run-android
,但都不起作用。
react-native start
将首先启动打包器,但总是出错:
投掷者; // 未处理的“错误”事件 ^
错误:EMFILE:打开的文件太多,请注意
在 FSEvent.FSWatcher._handle.onchange (internal/fs/watchers.js:123:28) 在 NodeWatcher 上发出“错误”事件
实例在:
在 NodeWatcher.checkedEmitError (/Users/vorousjames/Desktop/RedlineAdvantage/photo-app/app/node_modules/sane/src/node_watcher.js:143:12)
在 FSWatcher.emit (events.js:210:5)
在 FSEvent.FSWatcher._handle.onchange (internal/fs/watchers.js:129:12) { errno: -24, syscall: 'watch',
代码:'EMFILE',文件名:null }
和 react-native run-android --deviceId emulator-5554
的结果与上述相同,但在 gradle 构建期间出现错误:
任务 :unimodules-core:compileReleaseJavaWithJavac 失败
FAILURE:构建失败,出现异常。
找不到 tools.jar。请检查 /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home 是否包含有效的 JDK 安装。
当它最终通过 docker-compose 构建时,一切都很好,所以我很困惑。有人试过这样做吗?